【发布时间】:2015-05-19 17:26:24
【问题描述】:
如果我删除 Where 子句,下面提到的查询可以正常工作。请问有什么建议吗??
SELECT dbo.MPProjektBuchungserfassung.BuchungsErfassungID, dbo.MPProjektBuchungserfassung.QuellReferenz, dbo.MPProjektstamm.Projektnummer,
dbo.MPProjektstamm.Projekttyp, dbo.MPProjektstamm.Matchcode AS ProjektMatchcode, dbo.MPProjektPhasen.PhasenID,
dbo.MPProjektPhasen.Phase AS PhasenMatchcode, MPProjektleiterstamm.Personalnummer AS ProjektLeiternummer,
MPProjektleiterstamm.Matchcode AS ProjektLeiterMatchcode, dbo.MPVKVertraege.VertragsID, dbo.MPVKVertraege.Vertragsnummer,
dbo.MPVKVertraege.Bezeichnung, dbo.MPVKVertraege.KHKMandant, dbo.MPVKVertraege.Referenznummer,
dbo.MPVKVertraege.Referenzzeichen, dbo.MPVKVertraegePositionen.Vertragsposition, dbo.MPVKVertraegePositionen.Matchcode AS PositionsMatchcode,
dbo.MPHotlineAnfrage.AnfrageID, dbo.MPHotlineAnfrage.Kurzbeschreibung, dbo.MPHotlineAnfrage.AnfrageText, dbo.MPHotlineAnfrage.CardCode,
dbo.MPHotlineAnfrage.AdressMatchcode, dbo.MPHotlineAnfrage.Referenz, dbo.MPPersonenstamm.Personalnummer, IsNull(dbo.MPVKVertraegePositionen.USER_Ratio, 1) AS 'Ratio',
dbo.MPPersonenstamm.Matchcode AS PersonalMatchcode, dbo.MPVKVertraege.Projektnummer,
case dbo.MPPerioden.BezeichnungPeriode when 'Januar' then '01.January' when 'Februar' then '02.February' when 'März' then '03.March'
when 'April' then '04.April' when 'Mai' then '05.May' when 'Juni' then '06.June'
when 'Juli' then '07.July' when 'August' then '08.August' when 'September' then '09.September'
when 'Oktober' then '10.October' when 'November' then '11.November' when 'Dezember' then '12.December'
End as 'Month',dbo.MPPerioden.BezeichnungJahr,
dbo.MPProjektBuchungskopf.Periode, dbo.MPProjektBuchungserfassung.LeistungsTag, dbo.MPProjektBuchungserfassung.Menge,
dbo.MPProjektBuchungserfassung.MengeFAK as 'Horas', dbo.MPProjektBuchungserfassung.Aktivitaet, dbo.MPProjektBuchungserfassung.Memo,
dbo.MPProjektBuchungserfassung.Freigabe, MPProjektLeistungserfassung.FakturaID,
CASE dbo.MPHotlineAnfrage.Status WHEN '1' THEN 'New' WHEN '2' THEN 'In Process' WHEN '3' THEN 'Customer Action' WHEN '4' THEN '3rd Party Investigation' WHEN
'5' THEN 'Closed' END AS 'Status',dbo.MPPerioden.Periode as 'Ind Periode',
T2.ContractNo,T2.Contract_Desc, ISNULL(T2.Q1, 0) AS 'Q1',
ISNULL(T2.January, 0) AS 'January', ISNULL(T2.February, 0) AS 'February', ISNULL(T2.March, 0) AS 'March',
ISNULL(T2.Invoiced_Q1, 0) AS 'Invoiced_Q1', ISNULL(T2.Q2, 0) AS 'Q2', ISNULL(T2.April, 0) AS 'April',
ISNULL(T2.May,0) AS 'May', ISNULL(T2.June, 0) AS 'June', ISNULL(T2.Invoiced_Q2, 0) AS 'Invoiced_Q2',
ISNULL(T2.Q3, 0) AS 'Q3', ISNULL(T2.July, 0) AS 'July', ISNULL(T2.August, 0) AS 'August',
ISNULL(T2.Invoiced_Q3, 0) AS 'Invoiced_Q3', ISNULL(T2.Q4, 0) AS 'Q4', ISNULL(T2.September, 0) AS 'September',
ISNULL(T2.October, 0) AS 'October',ISNULL(T2.November, 0) AS 'November', ISNULL(T2.December, 0) AS 'December',
ISNULL(T2.Invoiced_Q4, 0) AS 'Invoiced_Q4',T2.Remaining_Year, T2.Comments, T2.Q1_Comments, T2.January_Comments,
T2.February_Comments, T2.March_Comments, T2.Q2_Comments, T2.April_Comments, T2.May_Comments, T2.June_Comments,
T2.Q3_Comments, T2.July_Comments, T2.August_Comments,T2.September_Comments, T2.Q4_Comments, T2.October_Comments,
T2.November_Comments, T2.December_Comments
, (SELECT Count(MPProjektLeistungserfassung.BuchungserfassungID) AS LCount
FROM MPProjektLeistungserfassung
WHERE MPProjektLeistungserfassung.BuchungserfassungID = MPProjektBuchungserfassung.BuchungsErfassungID
AND MPProjektLeistungserfassung.Position > 0) AS Zuschlag
FROM dbo.MPProjektBuchungserfassung INNER JOIN
dbo.MPProjektBuchungskopf ON dbo.MPProjektBuchungserfassung.BuchungsKopf = dbo.MPProjektBuchungskopf.BuchungsKopfID INNER JOIN
dbo.MPProjektLeistungserfassung AS MPProjektLeistungserfassung ON
dbo.MPProjektBuchungserfassung.BuchungsErfassungID = MPProjektLeistungserfassung.BuchungserfassungID AND
MPProjektLeistungserfassung.Position = 0 INNER JOIN
dbo.MPProjektstamm ON dbo.MPProjektBuchungserfassung.Projektnummer = dbo.MPProjektstamm.Projektnummer INNER JOIN
dbo.vwMPProjektleiter ON dbo.vwMPProjektleiter.Projektnummer = dbo.MPProjektBuchungserfassung.Projektnummer LEFT OUTER JOIN
dbo.MPProjektPhasen ON dbo.MPProjektBuchungserfassung.PhasenID = dbo.MPProjektPhasen.PhasenID INNER JOIN
dbo.MPVKVertraege ON MPProjektLeistungserfassung.VertragsID = dbo.MPVKVertraege.VertragsID INNER JOIN
dbo.MPVKVertraegePositionen ON MPProjektLeistungserfassung.Vertragsposition = dbo.MPVKVertraegePositionen.Vertragsposition left outer JOIN
dbo.MPHotlineAnfrage ON dbo.MPHotlineAnfrage.AnfrageID = dbo.MPProjektBuchungserfassung.QuellReferenz INNER JOIN
dbo.MPPersonenstamm AS MPProjektleiterstamm ON dbo.vwMPProjektleiter.Personalnummer = MPProjektleiterstamm.Personalnummer INNER JOIN
dbo.MPPersonenstamm ON dbo.MPProjektBuchungskopf.Personalnummer = dbo.MPPersonenstamm.Personalnummer INNER JOIN
dbo.MPPerioden ON dbo.MPProjektBuchungskopf.Periode = dbo.MPPerioden.PeriodeJahr
LEFT OUTER JOIN dbo.MP_USER_Retainers AS T2 ON dbo.MPVKVertraege.VertragsID= T2.ContractNo
where DATEADD(MONTH,DATEDIFF(MONTH,-1,GETDATE())-1, -1)
order by dbo.MPProjektBuchungskopf.Periode
【问题讨论】:
标签: mysql sql-server sql-server-2008 date