sql >> Databasteknik >  >> RDS >> Sqlserver

Kontrollera om en sträng innehåller en delsträng i SQL Server 2005, med hjälp av en lagrad procedur

CHARINDEX() söker efter en delsträng i en större sträng och returnerar positionen för matchningen, eller 0 om ingen matchning hittas

if CHARINDEX('ME',@mainString) > 0
begin
    --do something
end

Redigera eller från daniels svar, om du vill hitta ett ord (och inte underkomponenter av ord), din CHARINDEX samtalet skulle se ut så här:

CHARINDEX(' ME ',' ' + REPLACE(REPLACE(@mainString,',',' '),'.',' ') + ' ')

(Lägg till fler rekursiva REPLACE()-anrop för andra skiljetecken som kan förekomma)



  1. Oracle Infoga Välj med beställning efter

  2. SQL CREATE TABLE … SOM SELECT-sats

  3. Undvik nummerkonflikter med Microsoft SQL-sekvenser

  4. Toppverktyg för säkerhetskopiering för PostgreSQL