Min nödlösning blev att jag först får välja ut de ID från tbl_valda som tillhör 'foo' därefter välja ut all från tbl_alla förutom de som matchar de jag först hämtade ut.
hade det varit SQL-server eller Oracle så hade det varit lätt att göra detta i en SQL-fråga men MINUS/EXCLUDE eller subqueries stöds inte av MySQL än.
Men jag skulle vara väldigt tacksam om någon annan kunde komma på en bättre lösning än denna.
Ehh, känns som om du behöver se över din databasdesign istället för sql-frågorna. Vad betyder en tabell som heter "alla" och en som heter "valda"? Du behöver inte förklara för mig, men "tänk efter före". ;)
Ehh, känns som om du behöver se över din databasdesign istället för sql-frågorna. Vad betyder en tabell som heter "alla" och en som heter "valda"? Du behöver inte förklara för mig, men "tänk efter före". ;)
Min databas ser inte ut så. Var bara ett exempel jag gjorde för att förklara vad jag menade.
tbl_alla skulle bara symbolisera en tabell där det fanns många poster och en användare kunde välja några av dem.
tbl_valde är alltså en kopplingstabell för att användaren ska kunna välja några ur tbl_alla
Det är väl inget konstigt med det? Sen vad de heter har ju absolut ingen betydelse för upplägget av databasen. Så länge man själv vet vad allting är så gör det inget. Självklart är det bra med förklarande namn om man vill att andra lätt ska kunna sätta sig in i det.
Min databas ser inte ut så. Var bara ett exempel jag gjorde för att förklara vad jag menade.
tbl_alla skulle bara symbolisera en tabell där det fanns många poster och en användare kunde välja några av dem.
tbl_valde är alltså en kopplingstabell för att användaren ska kunna välja några ur tbl_alla
Okej! :)
The_Hulk skrev:
Sen vad de heter har ju absolut ingen betydelse för upplägget av databasen. Så länge man själv vet vad allting är så gör det inget. Självklart är det bra med förklarande namn om man vill att andra lätt ska kunna sätta sig in i det.
Så länge du är helt själv och sysslar med databasen kontinuerligt, ja. Men varför göra det sämsta av situationen? Om du skulle låta databasen vila i sex månader och därefter komma tillbaka för att administrera den så lovar jag dig att du har svårt att över huvud taget begripa vad tabellerna "alla", "valda", "ejvalda", "inskickade" och allt vad de heter innebär. Jag har själv gjort de misstagen, fast då gäller det inte databaser. ;)
Att göra en bra design från grunden underlättar inte bara framtida administration, det är lättare för andra att sätta sig in i det och det blir dessutom lättare att integrera med andra system.
Ta inte detta som något klagomål utan som ett tips. Den enda som blir lidande för en dålig design är ju du själv. :)
251 ms totalt · 4 externa anrop · v20260731065814-full.2f471f9e