![]() |
SQL-fråga med LIKE '[0-9]%' funkar inte??
På diverse sidor på internet (exempel, exempel) kan man läsa att detta borde fungera hur bra som helst:
SELECT * FROM `tabell` WHERE `kolumn` LIKE '[0-9]%'; Den bör alltså returna alla rader som börjar med en siffra 0 till 9 men den returnerar ett tomt resultat. Jag har testat både hos Binero och Loopia. Även [A-B] bör gå men fungerar inte. Däremot funkar denna: SELECT * FROM `tabell` WHERE `kolumn` LIKE '0%'; Någon som vet varför? |
Så vitt jag vet, så kör Binero/Loopia med MySQL/MSSQL.
Funderat på att läsa manualen ;) http://dev.mysql.com/doc/refman/5.1/...functions.html --- Att det finns i SQL menas ju inte med att det stöds av DBMSen. Funktioner i Oracle behöver ju inte funka i Access av förklarliga skäl o vise versa. |
Du kan använda dig av WHERE LEFT(kolumn, 1) REGEXP('[0-9]')
|
Ok
@Lumax, funkade perfekt. Tack! |
Vad är det för datatyp på 'kolumn', char/varchar?
SELECT * FROM `tabell` WHERE `kolumn` LIKE '[0-9]%'; = här letar du efter en sträng som börjar med '[0-9]', vilket kommer ge träffar på all test som börjar just med'[0-9]'. Exempel på en träff '[0-9]hejhej' Där för gissar jag att du får fel träffar. SELECT * FROM `tabell` WHERE `kolumn` LIKE '0%'; medan här söker du på strängar som bara börjar med '0'. Exempel på en träff '0hejhej' |
Alla tider är GMT +2. Klockan är nu 18:51. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson