webForumDet fria alternativet

Hämta stugor med fler faciliteter

Databaser & SQL

1 svar · 359 visningar · startad av chha33

Medlem sedan juli 20065 inlägg
Frågan#1

Databas: MySQL 4.0.24

Tabeller:
td_stugor med ID
td_faciliteter med ID
td_stugor_faciliteter med stugID och facilitetID

Tabellen td_stugor_faciliteter berättar vilka faciliteter som finns i varje stuga.
Ex:
stugID - facilitetID
53 - 17
53 - 18

Jag vill hämta alla stugor som har vissa faciliteter. Dvs. alla ID från td_stugor (ej stugID från td_stugor_faciliteter p.g.a. resten av SQL-satsen) som har facilitetID=17 och facilitetID=18

Följande fungerar ju inte:

SELECT td_stugor.ID FROM td_stugor, td_stugor_faciliteter WHERE  td_stugor.ID=td_stugor_faciliteter.stugorID AND td_stugor_faciliteter.faciliteterID=17 AND td_stugor_faciliteter.faciliteterID=18

Tack på förhand
/Christer

Medlem sedan dec. 200012 464 inlägg
#2
SELECT td_stugor.ID 
   FROM td_stugor join td_stugor_faciliteter on td_stugor.ID=td_stugor_faciliteter.stugorID 
  where td_stugor_faciliteter.faciliteterID in (17,18)
  group by td_stugor.ID 
 having count(*) = 2
247 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
116 ms — ändringar (db)