Pytanie : SQL Zapytanie składnia

Cześć - I mieć główny wybrany oświadczenie który być całkiem całkiem - Dostawać wszystkie raport który przedkładać - I potrzebować inny wybrany oświadczenie w the zapytanie the rezultat dalej i I być niepewny dlaczego ono.  The zapytanie ciągnąć wszystkie the raport, tam  być inny stół który przechować wszystkie the raport który nowelizować i the nowy id dla - I mieć the nowy zapytanie (the odpowiedź che przychodzić od the powiązany pytanie ten pytanie) I zawierać the zapytanie który i próbować - z the sub-query w ono - ale ono napisać niepoprawnie i I być pewny dlaczego ono… być może… być równie jasno błoto - zadawalać czuć swobodnie pytanie dla czuć I biedak wyjaśniać dobrze dosyć…  The dokąd klauzula dokąd I precyzować the report_id musieć wszystkie rejestr i wtedy TYLKO the nowy reportID który móc wśród ten lista….
Select pc.PROV_STATE_NAME_FR, rd. Operating_entity_name, rd.YEAR,
rd.report_type_name_fr, id.inventory_state_name_FR, id.phase_type_name_fr, id.report_id,
CASE id.in_equipment
WHEN "fałszywy" WTEDY 'Liquide Dans UN Equipement'< br/>WHEN "prawdziwy" WTEDY 'Liquide Pas Dans UN Equipement'< br/>END JAKO InEquipment,
SUM (id.quantity) Jako ilość, id.unit_fr,
SUM (id. Concentration_value) RÓWNIE Koncentracja, id.concentration_range
FROM vwInventory_Denormalized Id ŁĄCZYĆ vwReportLegalEntity_Denormalized JAKO rd NA id.report_id = rd.report_id
JOIN Company_location cl NA cl. Legal_entity_id = rd.legal_entity_id ŁĄCZYĆ Location_address Los Angeles NA la.location_id = cl.location_id ŁĄCZYĆ ProvState_code komputer osobisty NA komputer osobisty. Prov_state_code = Los Angeles. Prov_state_code
JOIN EC_Region r NA r.EC_Region_id = komputer osobisty. Region_id
WHERE id.quantity > 0
AND rd.REPORT_TYPE_ID = 2
AND rd. Rok = 2009
AND id.report_id ISTNIEĆ W (wybiórka * od report_amendment a
where a.report_new_id = (wybrany wybrany (report_new_id)
from report_amendment
where report_root_id = a.report_root_id))
GROUP Pc.PROV_STATE_NAME_FR,
rd. Operating_entity_name,
rd.YEAR,
rd.report_type_name_fr,
id.inventory_state_name_fr,
id.phase_type_name_fr,
id.reportid,
id.unit_fr,
id.concentration_range,
id.in_equipment,
rd.report_type_name_fr
Related Rozwiązanie: SQL Query

Odpowiedź : SQL Zapytanie składnia

zmartwiony dla the "stół vwInventory_Denormalized" jako X
(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:
Wybrany pc.PROV_STATE_NAME_FR, rd. Operating_entity_name, rd.YEAR,
 rd.report_type_name_fr, id.inventory_state_name_FR, id.phase_type_name_fr, id.report_id,
id.InEquipment,
SUMA (id.quantity) Jako ilość, id.unit_fr,
SUMA (id. Concentration_value) JAKO Koncentracja, id.concentration_range

OD (wybrany x.*
            , 'Liquide '+case in_equipment gdy "prawdziwy" wtedy "Pas" inny '' końcówka
            + ' Dans UN Equipment' jako InEquipment  
        od vwInventory_Denormalized jako X
      ) JAKO id 
Wewnętrzny ŁĄCZYĆ vwReportLegalEntity_Denormalized JAKO rd 
   NA id.report_id = rd.report_id
Wewnętrzny ŁĄCZYĆ Company_location cl 
   NA cl. Legal_entity_id = rd.legal_entity_id 
Wewnętrzny ŁĄCZYĆ Location_address Los Angeles 
   NA la.location_id = cl.location_id 
Wewnętrzny ŁĄCZYĆ ProvState_code komputer osobisty 
   NA komputer osobisty. Prov_state_code = Los Angeles. Prov_state_code
Wewnętrzny ŁĄCZYĆ EC_Region r 
   NA r.EC_Region_id = komputer osobisty. Region_id

 Lewy zewnętrzny łączyć report_amendment jako a1
   na a1.report_old_id=id.report_id

 DOKĄD id.quantity > (0)
  I rd.REPORT_TYPE_ID = 2
  I rd. Rok = 2009
  I a1.report_old_id być null
      

GRUPA Pc.PROV_STATE_NAME_FR,
rd. Operating_entity_name,
rd.YEAR,
rd.report_type_name_fr,
id.inventory_state_name_fr,
id.phase_type_name_fr,
id.reportid,
id.unit_fr,
id.concentration_range,
id.inequipment,
rd.report_type_name_fr
Inne rozwiązania  
 
programming4us programming4us