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

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
MySQL & like
Fra : spam]@mail.dk (Bo Ra~


Dato : 10-02-01 14:26

1. Hvordan søges f.eks. strengen 'Bo' i en database med LIKE uden at
der tages hensyn til om teksten er skrevet med store eller små
bogstaver.


2. Hvis jeg har en række profiler med fornavn efternavn adresse m.m.
som jeg ønsker at søge i f.eks. med strengen 'en'. Hvordan bør det så
gøres, jeg forestiller mig, at de enkelte elementer i tabellen samles
til en streng der så søges i, eller hvordan kan det gøres ?

mvh
bo rattenborg


 
 
Morten Winther (10-02-2001)
Kommentar
Fra : Morten Winther


Dato : 10-02-01 23:17

<bo.rattenborg[no spam]@mail.dk (Bo Rattenborg)> wrote in message
news:3a853faf.1104167@sunsite.auc.dk...
> 1. Hvordan søges f.eks. strengen 'Bo' i en database med LIKE uden at
> der tages hensyn til om teksten er skrevet med store eller små
> bogstaver.

SELECT * FROM tabelnavn WHERE felt = 'Bo'
eller
SELECT * FROM tabelnavn WHERE felt LIKE = 'Bo'

Der er ingen grund til at bruge LIKE hvis du ikke søger med wildcard
(%).

SQL er ikke case-sensitiv

> 2. Hvis jeg har en række profiler med fornavn efternavn adresse m.m.
> som jeg ønsker at søge i f.eks. med strengen 'en'. Hvordan bør det

> gøres, jeg forestiller mig, at de enkelte elementer i tabellen
samles
> til en streng der så søges i, eller hvordan kan det gøres ?

Ved ikek om jeg forstår dig ret.

SELECT * FROM tabelnavn WHERE fornavn = 'en' OR efternavn = 'en' OR
adresse= 'en'

Ellers læs kapitel 7.4 i biblen (mest 7.4.5 & 7.4.6)

http://www.mysql.com/doc/F/u/Functions.html

/ morten





spam]@mail.dk (Bo Ra~ (11-02-2001)
Kommentar
Fra : spam]@mail.dk (Bo Ra~


Dato : 11-02-01 20:53

On Sat, 10 Feb 2001 22:16:55 GMT, "Morten Winther" <mw.news@mwi.dk>
wrote:

><bo.rattenborg[no spam]@mail.dk (Bo Rattenborg)> wrote in message
>news:3a853faf.1104167@sunsite.auc.dk...
>> 1. Hvordan søges f.eks. strengen 'Bo' i en database med LIKE uden at
>> der tages hensyn til om teksten er skrevet med store eller små
>> bogstaver.
>
>SELECT * FROM tabelnavn WHERE felt = 'Bo'
>eller
>SELECT * FROM tabelnavn WHERE felt LIKE = 'Bo'
>
>Der er ingen grund til at bruge LIKE hvis du ikke søger med wildcard
>(%).
>
>SQL er ikke case-sensitiv
>

Hmm hvis jeg med:
SELECT id, title, date FROM news WHERE text LIKE '%".$search_text."%'
AND lang = 'dk' ORDER BY date);

Så findes ikke de samme resultater når der f.eks. søges på Bo bo,
hvilket vel burde være tilfældet ?? hvad gør jeg forkert ?



Claus (12-02-2001)
Kommentar
Fra : Claus


Dato : 12-02-01 14:27

> SQL er ikke case-sensitiv

F.eks. Oracle er. Og hvis jeg ikke husker helt galt, så er DB2 også...

mvh.
claus



Kristian Damm Jensen (12-02-2001)
Kommentar
Fra : Kristian Damm Jensen


Dato : 12-02-01 15:05

Morten Winther wrote:
>
> <bo.rattenborg[no spam]@mail.dk (Bo Rattenborg)> wrote in message
> news:3a853faf.1104167@sunsite.auc.dk...
> > 1. Hvordan søges f.eks. strengen 'Bo' i en database med LIKE uden at
> > der tages hensyn til om teksten er skrevet med store eller små
> > bogstaver.
>
> SELECT * FROM tabelnavn WHERE felt = 'Bo'
> eller
> SELECT * FROM tabelnavn WHERE felt LIKE = 'Bo'
>
> Der er ingen grund til at bruge LIKE hvis du ikke søger med wildcard
> (%).
>
> SQL er ikke case-sensitiv

Nej, men de fleste implementationer er, eller kan sættes til at være
det.

<snip>

select * from tabel where felt like '[Bb][Oo]'

eller man kan udnytte at de fleste implementationer giver mulighed for
at konvertere mellem store og små bogstaver, fx:

select * from tabel where uppercase(felt) = 'BO'

--
Kristian Damm Jensen | Feed the hungry. Go to
kristian-damm.jensen@capgemini.dk | http://www.thehungersite.com


Søg
Reklame
Statistik
Spørgsmål : 177518
Tips : 31968
Nyheder : 719565
Indlæg : 6408645
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste