04. juli 2006 - 10:12Der er
14 kommentarer og 1 løsning
Udtrækning efter første bogstav i felt
Hej
Jeg har en hjemmeside (php) med en database (mysql) over sange. Jeg kunne godt tænke mig at kunne trække sange ud efter første bogstav i titlen, noget i retning af:
SELECT * FROM songs WHERE "firstletter(title)==a"
,hvor det der står i anførselstegn er min pseudokode for at få alle sange der begynder med bogstavet a.
Spørgsmålet er nu: Kan dette lade sig gøre i "ren SQL" eller bliver jeg nød til at trække alle records ud og selv lave noget kode der filtrerer?
Kan ikke lige huske hvordan det er med casesensivity, men ellers kan du bruge: WHERE lower(title) LIKE 'a%'" for at få ord der starter med både store og små a'er.
LIKE er altid versalufølsom, med mindre det ene af ordene er en BINARY streng:
WHERE BINARY title LIKE 'a%'
Vil kun matche, hvor titlen starter med lille a.
Og ja, jeg tror nu også, at LEFT vil være hurtigst. Desværre kan MySQL vist endnu ikke lave indekser på funktionskald (som postgresql kan), så alternativt burde man nok lave et felt med første bogstav, som man indekserede (om performance var et issue).
OK. Der er ellers point nok til alle. Jeg kan se at 100 måske var lidt overdrevet i forhold til sværhedsgraden - men på den anden side, så har jeg ikke så meget andet at bruge pointene til ...
Hmmmm. Jeg skal vist øve lidt på det her. Trykkede på "Accepter" og vupti - fennec fik 100 point. Havde regnet med at få mulighed for at ændre point og lign. inden det gik igennem. I dette tilfælde er det helt OK med mig at fennec får pointene, men en anden gang ville det være rart at vide hvordan man nedjusterer eller deler point ved accept af svar. Har forgæves ledt efter vejledning i "Sådan opretter og afslutter man et spørgsmål" eller lignende under Info. ???
Hvis du bare skal uddele el del af de point du har tilbudt, lägger du selv et svar og markerer jer begge to (eller hvor mange der nu skal dele pointene). Tror også der findes en knap (kan ikke rigtig huske det), hvor på der stå avanceret, som er beregnet til at dele selvdefinieret point til de man har markeret.
OK. Det vil jeg prøve næste gang. Tak for hjælpen!
mvh Anders Skagen
Synes godt om
Ny brugerNybegynder
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.