/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
SQL forespørgsel
Fra : Kruger


Dato : 08-07-03 13:02

Jeg har et problem med SQL.

Det jeg vil er at jeg kun vil 'selecte' records i min database
der indeholder ordet "true" i feltet 'enabled'.

Det kunne jo nemt gøres med:

"Select * from products where enabled = 'true'"

problemet er at feltet 'enabled' indeholder andre oplysninger end
'true' eller 'false'.

Findes der en kommando der kunne bruges noget i retning af:

"Select * from products where enabled INDEHOLDER 'true'"

På forhånd tak!


--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Jens Gyldenkærne Cla~ (08-07-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 08-07-03 13:31

Kruger skrev:

> Det jeg vil er at jeg kun vil 'selecte' records i min database
> der indeholder ordet "true" i feltet 'enabled'.

Hvis "enabled" beskriver en tilstand der kan være enten sand eller
falsk (tænd/sluk, on/off, ja/nej) burde det nok være et felttype
der passer til denne tilstand. Det er fx boolean i MS Access eller
Bit i MSSQL.


> problemet er at feltet 'enabled' indeholder andre oplysninger end
> 'true' eller 'false'.

Helt generelt er det ikke godt at gemme flere oplysninger i ét
felt. Som du har opdaget bliver det noget mere besværligt at bruge
feltet i forespørgsler.


> Findes der en kommando der kunne bruges noget i retning af:
>
> "Select * from products where enabled INDEHOLDER 'true'"

Ja - for tekstfelter hedder det LIKE, kombineret med wildcard:

SELECT * FROM products WHERE enabled LIKE '%true%'

Men like-søgninger er væsentligt tungere end andre søgninger.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Kruger (08-07-2003)
Kommentar
Fra : Kruger


Dato : 08-07-03 19:57

> Ja - for tekstfelter hedder det LIKE, kombineret med wildcard:
>
> SELECT * FROM products WHERE enabled LIKE '%true%'
>
> Men like-søgninger er væsentligt tungere end andre søgninger.

Takker, det var lige præcis LIKE kommandoen jeg ledte efter.
Jeg ved godt at i det tilfælde jeg har beskrevet er det naturligvis
bedst bare at bruge true/false, men det var bare givet som et
eksempel.

Men tak for hjælpen...

- Kruger

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408946
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste