Söka i början och slutet på SQL-strängar
Konstigt att jag under 10 år med SQL inte har behövt göra detta sökmönster. Hittade svaret på bytes.com:
startswith: WHERE x LIKE @Value + '%'
endswith: WHERE x LIKE '%' + @Value
contains: WHERE x LIKE '%' + @Value + '%'
Bakgrunden var att jag migrerade en sajt till nytt webbhotell. På detta fungerade det inte att ha filnamn på bilder som börjar på en punkt.
I mitt fall började alla mina bilder med punkt följd av ett underscore så jag kunde få fram alla med shjälp av följande sökning.
Har filnamnen i en db-tabell och fick fram dem med följande sökning:
SELECT [FileName] FROM [MediaItem] WHERE [FileName] LIKE '._%'
Och sen bytte ut namnet på alla dessa så de startar med img istället för punkten.
UPDATE [MediaItem] SET [FileName]=REPLACE([FileName],'._','img_') WHERE [FileName] LIKE '._%';
Sen för att byta ut namnen på själva filerna så hittade jag ett program som funkade, Bulk Rename Utility. Det verkar vara ett rätt avancerat verktyg och finns säkerligen mer lättanvända. Men funkade för mig.
Tags