webForumDet fria alternativet

Kolla om något innehåller ett ord

Databaser & SQL

10 svar · 472 visningar · startad av Cactuz

Medlem sedan okt. 2001670 inlägg
Frågan#1

Jag har en lista på ord i en tabell. Nu vill jag kolla om det ordet jag har innehåller något av de orden som finns i tabellen. typ SELECT ord FROM tabell WHERE ord FINNS I 'detta'

Medlem sedan dec. 200012 464 inlägg
#2

Vad menar du med en lista?

Har du flera ord i samma kolum?

Medlem sedan okt. 2001670 inlägg
#3

Precis.. Samma kolumn, olika rader ;)

Medlem sedan aug. 20002 272 inlägg
#4
strOrd = 'mitt ord'

SQL = " SELECT * FROM tabell WHERE Ord LIKE '%"& strOrd &"%' "
Set rs = objConn.Execute(SQL)

If rs.Eof Then
  'ORDET HITTADES INTE
Else
  'ORDET HITTADES
End If
rs.Close : Set rs = Nothing

RED. Sen Jymdis påpekande inlägget här under ;)

Medlem sedan mars 20016 260 inlägg
#5

JAreMANNEN:
Där får du väl bara träffar där ord är exakt lika. Det är like med %% som ska användas väl?

Medlem sedan aug. 20002 272 inlägg
#6

Jymdis skrev:

JAreMANNEN:
Där får du väl bara träffar där ord är exakt lika. Det är like med %% som ska användas väl?

Ja, det är sant...
Verkar som jag missförstod det hela :)

Medlem sedan okt. 2001670 inlägg
#7

Det där gör ju att tvärtom än vad jag vill. Jag vill att Ord ska kollas om det finns i strOrd. Inte om strOrd finns i Ord.

Medlem sedan mars 20016 260 inlägg
#8

Som jag sa, du behöver använda like istället.

SELECT "column_name" 
FROM "table_name" 
WHERE "column_name" LIKE %PATTERN%
Medlem sedan okt. 2001670 inlägg
#9

Rätta mig om jag har fel, men det där kollar väll om PATTERN finns i column_name?

Medlem sedan okt. 2001670 inlägg
#10

SELECT ord FROM tabell WHERE INSTR('detta', ord) > 0; gjorde susen :)

Medlem sedan mars 20016 260 inlägg
#11

Det är inte direkt optimerad..
Med pattern menade jag såklart att du skulle ersätta det ordet med ditt fält..

like %" & dittfalt &"%"

Enklare att skriva är det också :)

258 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)