Fråga : Queryhjälp för SQL 2005 - oriktig syntax nära ”; ”.

Först och främst, SQLEN behandlas dynamiskt av serveren - därför, kodifiera i VAR satsen ska looken som var udda till dig. Behaga ignorerar detta, som dess inte utfärda. den pröva förmiddagen för

I att få min rapport för att sätta in ett nytt ror i min dataset och, när I-försök till UNION i det nästa mig får detta fel:

Msg 102, jämnar 15, påstår 1, fodrar syntax för 102
Incorrect nära ”; ”.
> för
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:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
" codeBody " " >SET NOCOUNT för class= " för = ISNULL (”07/01/2010”, ”1/1/1900”) OCH b.Status-<> 0 OCH b.entry < DATEADD (DAG, 1, ISNULL (”07/31/2010”, ”1/1/3000”) ) OCH --Filtrera på lätthet ( (OGILTIG INTE ÄR OGILTIG OCH pv.FacilityID IN (OGILTIGT)) ELLER (OGILTIGT ÄR OGILTIGT), ) OCH --Filtrera på företaget ( (OGILTIG INTE ÄR OGILTIG OCH pv.CompanyID IN (OGILTIGT)) ELLER (OGILTIGT ÄR OGILTIGT), ) OCH --Filtrera på finansiellt klassificerar ( (OGILTIG INTE ÄR OGILTIG OCH pv.FinancialClassMID IN (OGILTIGT)) ELLER (OGILTIGT ÄR OGILTIGT), ) GRUPP BY pv.TicketNumber, pv. Besök, doc. Ledger, fac. Ledger, fena. Ledger HA SUM <> (pvp.TotalFee) 0 ) VÄLJ * FRÅN CTE ALL UNION VALT [TicketNumber], [Besök], ”01” SOM EntityCode, HÖGERT (ÅR (DATEADD (M, - (@otherlong - 1), besök)) , 2) SOM [räkenskapsår], LÄMNAT (OMVÄND (VARCHAR, DATEADD (M, - (@otherlong - 1), besök), 101), 2) SOM [den skatte- perioden], ”GL” SOM [undersystemet], ”JRNENT” SOM [källan kodifierar], ”11504075” + UTRYMME (12) SOM [DeptSubAccount], LÄMNAT (ISNULL ([beloppet], 22) + UTRYMME (22), 22) SOM [beloppet], ”D” SOM [debiteringen/krediterar], ”Centricity tillträde” + UTRYMME (34) SOM [beskrivningen], UTRYMME (6) SOM [Proj ID], UTRYMME (16) SOM [utfyllnadsgodset] FRÅN CTE ALL UNION ; MED CTF SOM ( VALT pv.TicketNumber, pv. Besök, ”01” SOM EntityCode, HÖGERT (ÅR (DATEADD (M, - (@otherlong - 1), b.Entry)) , 2) SOM [räkenskapsår], LÄMNAT (OMVÄND (VARCHAR, DATEADD (M, - (@otherlong - 1), b.Entry), 101), 2) SOM [den skatte- perioden], ”GL” SOM [undersystemet], ”JRNENT” SOM [källan kodifierar], LÄMNAT (ISNULL (pymt. Ledger '') + UTRYMME (20), 20) SOM [DeptSubAccount], LÄMNAT (varchar OMVÄND (, t.amount) + UTRYMME (22), 22) SOM [beloppet], ”D” SOM [debiteringen/krediterar], ”Centricity tillträde” + UTRYMME (34) SOM [beskrivningen], UTRYMME (6) SOM [Proj ID], UTRYMME (16) SOM [utfyllnadsgodset] FRÅN PatientVisit pv INRE SAMMANFOGA det DoctorFacility kompet PÅ pv.CompanyId = comp.DoctorFacilityId INRE SAMMANFOGA DoctorFacility fac PÅ pv.FacilityId = fac.DoctorFacilityId INRE SAMMANFOGA DoctorFacility doc PÅ pv.DoctorId = doc.DoctorFacilityId LÄMNAT YTTRE SAMMANFOGA den Medlists fenan PÅ pv.FinancialClassMId = fin.MedListsId INRE SAMMANFOGA PatientProfile pp PÅ pv.PatientProfileId = pp.PatientProfileId INRE SAMMANFOGA VisitTransactions vt PÅ pv.PatientVisitId = vt.PatientVisitid INRE SAMMANFOGA PaymentMethod pm PÅ vt.PaymentMethodId = pm.PaymentMethodId INRE SAMMANFOGA grupperar b PÅ pm.BatchID = b.BatchID INRE SAMMANFOGA transaktioner t PÅ vt.VisitTransactionsId = t.VisitTransactionsId LÄMNAT YTTRE SAMMANFOGA MedLists på PÅ t.ActionTypeMId = at.MedListsId LÄMNAT YTTRE SAMMANFOGA (välj * från medlists var tablename = ”PaymentTypes”), pymt PÅ t.ActionTypeMId = pymt.MedlistsId VAR t.Action = ”p-” OCH b.Status-<> 0 OCH INTE FINNS (VÄLJ 1 FRÅN PaymentMethod pm1 VAR vt.PaymentMethodId = pm1.PaymentMethodId OCH pm1.InsuranceTransfer = 1) OCH b.entry->= ISNULL (”07/01/2010”, ”1/1/1900”) OCH b.entry < DATEADD (DAG, 1, ISNULL (”07/31/2010”, ”1/1/3000”) ) OCH --Filtrera på lätthet ( (OGILTIG INTE ÄR OGILTIG OCH pv.FacilityID IN (OGILTIGT)) ELLER (OGILTIGT ÄR OGILTIGT), ) OCH --Filtrera på företaget ( (OGILTIG INTE ÄR OGILTIG OCH pv.CompanyID IN (OGILTIGT)) ELLER (OGILTIGT ÄR OGILTIGT), ) OCH --Filtrera på finansiellt klassificerar ( (OGILTIG INTE ÄR OGILTIG OCH pv.FinancialClassMID IN (OGILTIGT)) ELLER (OGILTIGT ÄR OGILTIGT), ) GRUPP BY pv.TicketNumber, b.Entry, t.Amount, pv. Besök, doc. Ledger, fac. Ledger, fena. Ledger, pymt. Ledger HA t.amount-<> 0 ) VÄLJ * FRÅN CTF
" klar "

Svar : Queryhjälp för SQL 2005 - oriktig syntax nära ”; ”.

du har, i abstrakt begrepp:

; MED alias1 som (…)
VÄLJ… FRÅN alias1
ALL UNION
; med alias2 som (…)
VÄLJ… FRÅN alias2

du måste att göra MED strax, akaen:

; MED alias1 som (…)
, alias2 som (…)
VÄLJ… FRÅN alias1
ALL UNION
VÄLJ… FRÅN alias2

Andra lösningar  
 
programming4us programming4us