ich habe nicht viel Expiriance mit SQL und ich versuche, meinen Kopf auf diese Abfrage knacken. Ich habe 3 Tabellen: Projekte, Taschenrechner und PartialBilling (Hinweis: die 'Rechner' Spalten, die Sie bei der Code ive gesehen 'k', 'l', 'm' usw. sind real ... ich gab ihnen diese Namen nicht ...).SQL-Abfrage: NULL-Werte, die nicht NULL sein sollten, wenn Aggregatfunktion mit linken Verknüpfung
die Abfrage funktioniert gut, aber Teil der Werte, die ich von der Aggregatfunktion erwarten (‚sumofTotal‘ Spalte) kehrt als Nullwerte und, und sie sollten nicht null sein. Ich wäre dankbar, wenn jemand den Fehler in der Abfrage aufzeigen würde.
SELECT Projects.SpCall,Projects.CustName,Projects.CustNumber
,Projects.ReceiveDate,Projects.StartDate,Projects.ProjectType
,Calculator.AN,Projects.Professional,Projects.PmUserName
,Projects.AcountManager,Projects.CrmCallNum,Projects.ProjectCategory
,Projects.CallNum,Projects.ContactName,Projects.ContactPhone
,Projects.ContactEmail,Projects.HiddenNote,Projects.RowColor
, Projects.HeaderCellText,
SUM(Calculator.K + Calculator.L + Calculator.M + Calculator.N + Calculator.AD + Calculator.AR) AS sumofTotal
,partialBilling.Ammount FROM Projects LEFT JOIN Calculator ON Projects.SpCall=Calculator.AQ
LEFT JOIN partialBilling ON Projects.SpCall = partialBilling.spCall
WHERE PmUserName= 'JOHN DOE'AND OpertionalStatus
<> 'Billed' AND OpertionalStatus<> 'Finished' AND
OpertionalStatus<> 'Passed To Billing' AND OpertionalStatus<> 'Scanning'
AND OpertionalStatus<> 'Ended'
AND OpertionalStatus<> 'Green Billing'
AND (GeneralStatus= 'Passed To Project Manager'
OR GeneralStatus= 'Astrategic Project')
GROUP BY Projects.SpCall,Projects.CustName,Projects.CustNumber
,Projects.ReceiveDate,Projects.StartDate,Projects.ProjectType
,Calculator.AN,Projects.Professional,Projects.PmUserName
,Projects.AcountManager,Projects.CrmCallNum,Projects.ProjectCategory
,Projects.CallNum,Projects.ContactName,Projects.ContactPhone
,Projects.ContactEmail,Projects.HiddenNote,Projects.RowColor
, Projects.HeaderCellText,partialBilling.Ammount;
das Problem vereinfachen, und es wird für alle einfacher sein (inkl Sie) zu verstehen, es. Viel weniger Spalten, einige Beispieltabellendaten und das erwartete Ergebnis. – jarlh
tnx, arbeitet daran. wenige Menuette. – jonathana