Permalänk
Medlem

SQL-frågor

Sitter och försöker få ihop en grej i Access men mina SQL-kunskaper är rätt rostiga.

Jag har:
- en tabell med kunder, [kundid, telefonnummer] ~20 000 rader
- en tabell med kundtyp, [startkundid, stoppkundid, typ] ~40 rader
- en tabell med kunder som matchar kriterie A ~4 000 rader
- en tabell med kunder som matchar kriterie B ~3 000 rader

Det jag vill ha ut är en ny tabell med
kundid, telefonnummer, kundtyp, kriterie A ja/nej, kriterie B ja/nej

Som det är nu så kör jag igenom kundtyperna manuellt, var och en för sig med en enskild query, det känner jag att det måste gå att göra på en gång men vet inte hur. Alla kundid mellan startkundid och stoppkundid tillhör en specifik typ.

Sen har jag glömt hur man joinar tabeller så jag får inte ut mycket vettigt när jag försöker matcha mot kriterietabellerna.

Hur ska jag göra?

Permalänk
Medlem

om tabellerna heter a, b, c, d borde något sånt här funka (otestat):

SELECT a.kundid, a.telefonnummer, b.kundtyp, ISNULL(c.kundid, -1) = c.kundid, ISNULL(d.kundid, -1) = d.kundid from a join b on a.kundid >= b.startkundid and a.kundid <= b.stoppkundid left join c on c.kundid = a.kundid left join d on d.kundid = a.kundid

Visa signatur

AK47s for everyone! - Angry mob
Since NaN /= NaN, I think, we should decipher 'NaN' as 'Not a NaN' - Miguel Mitrofanov
(Varför är människan så benägen att tro på Gud?) Antagligen har det lönat sig och evolutionen har drivit fram sådana hjärnor. - Anon