Avatar billede Slettet bruger
26. marts 2004 - 13:24 Der er 1 løsning

Vælge fra SET

Hej

Jeg har en SET hvor man kan vælge 4 forskellige værdier... Altså '1','2','3','4'

Jeg har en masse poster, hvor der er valgt op til to af de ovenstående.

Hvordan trækker jeg ud sådan at jeg fx kun får dem hvor dem hvor der kun er valg '1'?!? og evt både '1' og '2'?!?
Avatar billede detox Nybegynder
26. marts 2004 - 13:54 #1
Det nemmeste er nok at bruge LIKE. Skal du udelukkende have rækker, hvor kun '1' er sat:

SELECT * FROM `tabel` WHERE myset LIKE '1'

Rækker hvor præcis '1' og '2' er sat:

SELECT * FROM `tabel` WHERE myset LIKE '1,2'

Rækker hvor '2' er sat:

SELECT * FROM `tabel` WHERE myset LIKE '%2%'

Rækker hvor enten '1' eller '2' er sat:

SELECT * FROM `tabel` WHERE myset LIKE '%1%' OR myset LIKE '%2%'

eller:

SELECT * FROM `tabel` WHERE myset & 3

Den sidste er en binær sammenligning. Værdierne i set'et har de binære værdier:
1,2,4,8,16,32,osv... og de to første findes så med & (1 + 2).
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester