Jag förstår inte vad du menar med
Problemet är att jag vill plocka hur många BSPid det är som har fler än, Count(tblInvoice.invCID) > 1.
Ge exempel på datainnehåll coh förväntat resultat.
6 svar · 340 visningar · startad av MrTerm
Hej!
Var ett tag sedan jag satt med sql satser. Detta är mot en mysql 5.
Problemet är att jag vill plocka hur många BSPid det är som har fler än, Count(tblInvoice.invCID) > 1.
Dvs sql satsen nedan är korrekt, men jag vill även få in så den bara räknar på de som har Count(tblInvoice.invCID) > 1
SELECT count(BSPid) as countBS FROM tblBSCustomer, tblInvoice, tblCustomer WHERE tblInvoice.invStatus>0 AND tblInvoice.invCID=tblCustomer.CID AND tblBSCustomer.BSPid=tblCustomer.CPID AND MONTH(tblInvoice.invDtm)="& Month(now()) &""
Tack så jättemycket på förhand.
/Janne
Jag förstår inte vad du menar med
Problemet är att jag vill plocka hur många BSPid det är som har fler än, Count(tblInvoice.invCID) > 1.
Ge exempel på datainnehåll coh förväntat resultat.
Tack för extremt snabbt svar.
Ska försöka förklara hur det fungerar.
Jag vill få ut en siffra ur sql satsen.
tblBSCustomer.BSPid är ett personnummer.
tblCustomer.CPID är även det ett personnummer.
tblInvoice.invCID har samma värde som tblCustomer.CID
tblBSCustomer.BSPid har samma värde som tblCustomer.CPID
Count(tblInvoice.invCID) > 1 räknar om det finns mer fakturor på detta invCID.
Så igentligen räknar sql satsen ut hur många tblBSCustomer.BSPid som har Count(tblInvoice.invCID) > 1.
Så från detta presenteras bara en siffra.
Om jag ger förvirrande information, säg till!
Jag skulle tro att du behöver en eller flera subqueries. Väldigt svårt att skriva en query utan att se exakt hur din struktur ser ut.
Tänkte också detta, men krävs så mycket mer kraft då :(
select count(BSPid) as countBS
from tblBSCustomer
where exists
(select 1
from tblInvoice join blCustomer
on tblInvoice.invCID = tblCustomer.CID
where tblInvoice.invStatus > 0
and tblBSCustomer.BSPid = tblCustomer.CPID
and MONTH(tblInvoice.invDtm) = Month(current_date)
group by tblInvoice.invCID
having Count(*) > 1)
Hej Larsg!
Tack för svaret!
Jag kör din sql sats (dock saknas ett t vid blCustomer)
Men denna sql sats laddar konstant och ingenting händer.
Har lite svårt att se vad som kan vara fel, vad betyder: select 1 from tblInvoice
Tack på förhand.