Ответ 1
SELECT *
FROM myTable
WHERE URL = LEFT('mysyte.com/?id=2®ion=0&page=1', LEN(URL))
Или используйте CHARINDEX http://msdn.microsoft.com/en-us/library/aa258228(v=SQL.80).aspx
Я хочу написать процедуру сравнения (t-sql) для сайта seo.
У меня есть таблица с полем 'url' (nvarchar()), которые содержат часть URL-адреса сайта. Пример: "mysyte.com/?id=2". Также эта таблица для каждого URL содержит метаданные, которые мне нужно извлечь.
Основная проблема заключается в том, что полный URL-адрес на сайте выглядит как "mysyte.com/?id=2®ion=0&page=1", и мне просто нужно игнорировать все, кроме URL-адреса в таблице:
Я имею в виду: 'mysyte.com/?id=2' = > является частью 'mysyte.com/?id=2®ion=0&page=1'
SELECT *
FROM myTable
WHERE URL = LEFT('mysyte.com/?id=2®ion=0&page=1', LEN(URL))
Или используйте CHARINDEX http://msdn.microsoft.com/en-us/library/aa258228(v=SQL.80).aspx
Вы можете использовать оператор LIKE для сравнения содержимого строки T-SQL, например.
SELECT * FROM [table] WHERE [field] LIKE '%stringtosearchfor%'.
Процент символа "%" - это дикая карта, в этом случае он возвращает любые записи, в которых [поле] по крайней мере содержит значение "stringtosearchfor".
вы можете использовать CHARINDEX
в t-sql.
select * from table where CHARINDEX(url, 'http://url.com/url?url...') > 0