webForumDet fria alternativet

Problem med LIKE

3 svar · 188 visningar · startad av foks

foksMedlem sedan juli 200280 inlägg
#1

Jag har en tabell med 2 kolumner. I kolumn 1 står det 1234 och i kolumn 2 står det 3.
Jag vill nu att MySQL-strängen ska kontrollera om det som står i kolumn 2 står med någonstans i kolumn 1, vilket det i fallet ovan gör.
Det ska alltså bli ungefär som
SELECT * FROM tabell WHERE kolumn1 LIKE '%kolumn2%'

Men hur får jag strängen att fatta att kolumn2 finns med i tabellen, och inte är en vanlig text att jämföra med?

LarsGMedlem sedan dec. 200012 464 inlägg
#2
SELECT * FROM tabell 
WHERE kolumn1 LIKE concat('%',kolumn2,'%')

Det var en konstig datamodell.

foksMedlem sedan juli 200280 inlägg
#3

Tackar! Det fungerade perfekt. Databasstrukturen är inte så idiotisk som den verkar. Egentligen är det kolumner i helt olika tabeller som ska jämföras (och lite annat) men jag förenklade lite.

LarsGMedlem sedan dec. 200012 464 inlägg
#4

Oavsett om kolumnerna ligger i olika tabeller eller inte så tycker jag det är konstigt i alla fall.

ed:
Jag skulle nog säga det är värre om dom ligger i olika tabeller eftersom en join på det sättet aldrig kommer att bli effektiv eftersom man inte kan använda index.

131 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)