Avatar billede da_kbaz Nybegynder
05. april 2005 - 16:56 Der er 7 kommentarer

Hente alle rækker der starter med 0 -9 ?

Som overskriften påpeger, så forsøger jeg at finde ud af hvordan jeg kan hente alle rækker i en tabel, der starter med et tal (0 - 9)? Og er der en nem måde, at hende alle rækker på, som starter med et bogstav? Har brugt f.eks. LIKE 'A%' indtil nu, men forestiller mig der er en 'smartere' måde?
Avatar billede bromer Nybegynder
05. april 2005 - 16:58 #1
Du kan matche på en substring?
Avatar billede da_kbaz Nybegynder
05. april 2005 - 17:00 #2
Det har jeg forsøgt mig med, men uden held.

SELECT * FROM FirstName WHERE MID(FirstName,0,1) IN(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

Mener det var sådan jeg forsøgte, men det virker ikke efter hensigten. Var det sådan du tænkte på?
Avatar billede barklund Nybegynder
05. april 2005 - 17:08 #3
Den her er skæggere:

SELECT * FROM table WHERE ORD( LEFT( FirstName, 1 ) ) BETWEEN ORD( '0' ) AND ORD( '9' )

Noget i den stil :)

--
Morten Barklund
Avatar billede da_kbaz Nybegynder
05. april 2005 - 17:10 #4
Dette ser ud til at virke:

SELECT * FROM `AddressBook` WHERE SUBSTRING(FirstName,1,1) IN(0, 1, 2, 5)

Vælger "min" metode, da jeg synes jeg har en anelse bedre overblik over hvad der sker- Men barklund, hvis du har lyst til at uddybe din query, så er pointene dine :-)
Avatar billede da_kbaz Nybegynder
05. april 2005 - 17:14 #5
Min endelige query, i tilfælde af andre får bruge for lignende på et tidspunkt: SELECT * FROM `AddressBook` WHERE SUBSTRING(FirstName,1,1) BETWEEN '0' AND '9'
Avatar billede arne_v Ekspert
05. april 2005 - 17:51 #6
Det er nok den mest effektive løsning.

Et må være:

WHERE FirstName REGEXP '^[0-9]'
Avatar billede barklund Nybegynder
05. april 2005 - 20:50 #7
Oh, kunne man lave det direkte på tegnene med between, syret. Jeg synes min "konverter til ascii" var meget nasty :)

Men ja, det var noget af det samme - dog er det lidt nemmere at bruge left(txt,1), når man bare vil have det forreste tegn.

Jeg kaster lige et svar, hvis du synes jeg hjalp :)
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