Vraag : Cre�ër een Rapport van de Spil in de Versie 10g SQL van Oracle

Het proberen om een Spil van drie columned vraag/lijstgegevens tot stand te brengen - de periode/de taal/count_of
Gebruikend Oracle 10g
willen de geen Verklaringen van het Geval gebruiken aangezien dit een malplaatje voor velen andere reports
11g heeft een prachtige spilfunctie zal zijn - maar wij hebben 10g zo uit geluk there
ook hebben geprobeerd refcurseurs - ga niet daar!
zo hier is een modelverklaring van Oracle - „bijna is het werk "
Mijn huidige bijbel die me hier leidde als volgt
http://technology.amis.nl/ blog/300/pivoting-in-sql-using-the-10g-model-clause
die heeft me goed op de weg
maar niet de oorzaak van het probleem kan zien dat de vraag (hieronder) zeros
terugkeert de afmeting heeft geknepen, zal de verdeling en nog niet play
Hulp veel appreciated
" codeBody "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
drop- lijst myChecks zuivering;
cre�ër lijst myChecks (
 De datum van de periode
, Taal VARCHAR2 (20)
, count_of AANTAL)
kompres het nologging;

tussenvoegsel in myCheckswaarden (to_date (20100702, „yyyymmdd“), het „Braziliaanse Portugees“, 8);
tussenvoegsel in myCheckswaarden (to_date (20100702, „yyyymmdd“), „Bulgaar“, 1);
tussenvoegsel in myCheckswaarden (to_date (20100702, „yyyymmdd“), „Chinees“, 3);
tussenvoegsel in myCheckswaarden (to_date (20100702, „yyyymmdd“), „Deens“, 1);
tussenvoegsel in myCheckswaarden (to_date (20100702, „yyyymmdd“), het „Nederlands“, 4);
tussenvoegsel in myCheckswaarden (to_date (20100702, „yyyymmdd“), het „Engels“, 85);
tussenvoegsel in myCheckswaarden (to_date (20100702, „yyyymmdd“), „Finnen“, 2);
tussenvoegsel in myCheckswaarden (to_date (20100702, „yyyymmdd“), het „Frans“, 4);
tussenvoegsel in myCheckswaarden (to_date (20100702, „yyyymmdd“), het „Duits“, 51);
tussenvoegsel in myCheckswaarden (to_date (20100702, „yyyymmdd“), het „Grieks“, 3);
bega;

selecteer * uit myChecks;

/*
Bron gegevens gemakkelijke mening
DE TAAL COUNT_OF VAN DE PERIODE
  
02-juli-10 het Braziliaanse Portugees 8
02-juli-10 Bulgaar 1
02-juli-10 Chinees 3
02-juli-10 Deens 1
02-juli-10 het Nederlands 4
02-juli-10 het Engels 85
02-juli-10 Finnen 2
02-juli-10 het Frans 4
02-juli-10 het Duits 51
02-juli-10 het Grieks 3
*/


/* de hoofdVraag van de Spil */
selecteer periode, het Duits, het Frans, het Nederlandse Spaans,
 , Het Italiaans, Zweeds, het Grieks, Rus, het Portugees,
Deens, Chinese SimplifiedChinese,
  van myChecks
  het model NEGEERT unieke enige verwijzing NAV
  terugkeer bijgewerkte rijen
  verdeling langs (Periode)
  afmeting langs (Taal)
  maatregelen (count_of 0
     , 0 Chinees, 0 Deens, het 0 Nederlands, het 0 Frans 
     , 0 het Duits, 0 het Grieks, 0 het Italiaans  
     , het 0 Portugees, 0 Rus, 0 SimplifiedChinese 
     , 0 het Spaans, 0 Zweeds)
  regels
  (
      Chinees [0] = count_of [1]
     , Deens [0] = count_of [2]
     , Het Nederlands [0] = count_of [3]
     , Het Frans [0] = count_of [4]
     , Het Duits [0] = count_of [5]
     , Het Grieks [0] = count_of [6]
     , Het Italiaans [0] = count_of [7]
     , Het Portugees [0] = count_of [8]
     , Rus [0] = count_of [9]
     , SimplifiedChinese [0] = count_of [10]
     , Het Spaans [0] = count_of [11]
     , Zweeds [0] = count_of [12]
  )
  orde door 1 desc;
/* hieronder resultaten   
PERIODE DUITSE FRANSE SPAANSE NEDERLANDSE ITALIAANSE ZWEEDSE GRIEKSE RUSSISCHE PORTUGESE DEENSE SIMPLIFIEDCHINESE CHINEES
            
02-JUL-10	   0	      0 	 0	    0	       0	  0	     0		0	   0	      0 		0	   0
*/

de zuivering van de dalingslijst myChecks;

Antwoord : Cre�ër een Rapport van de Spil in de Versie 10g SQL van Oracle

Hallo,
Eerst en vooral, verstrekten de gelukwensen, u een volledige testcase.

Er zijn 2 punten:
1)  „maatregelen (count_of 0“ wijst 0 zo aan count_of toe los u de waarde
2) in de regels wat is zou de binnenkant [] een taalwaarde (omdat afmeting door taal) moeten zijn

Zo hier zijn de wijzigingen:

  maatregelen (count_of
     , 0 Chinees, 0 Deens, het 0 Nederlands, het 0 Frans
     , 0 het Duits, 0 het Grieks, 0 het Italiaans
     , het 0 Portugees, 0 Rus, 0 SimplifiedChinese
     , 0 het Spaans, 0 Zweeds)
  regels
  (
      Chinees [„*“] = count_of [„Chinees“]
     , Deens [„*“] = count_of [„Deens“]
     , Het Nederlands [„*“] = count_of [het „Nederlands“]
     , Het Frans [„*“] = count_of [het „Frans“]


Merk op dat ik 0 door „*“ heb vervangen omdat het een aantal maar geen taalnaam is u aan de lijn toewijst die alle talen cumuleert. U kunt zetten wat u wilt aangezien u het niet in uitgezocht, maar niet een aantal hebt.

Ik veronderstel u dacht dat van verwijzingen voorziend rijen met aantallen werden gedaan. Dit is niet het geval, worden zij van verwijzingen voorzien door de afmeting.

Achting,
Franck.
Andere oplossingen  
 
programming4us programming4us