多くの情報を含む Vehicle テーブルを取得しましたが、列の 1 つが MSSQL テーブルの「所有者」です
しかし、所有者の 1 人は使用時に選択できませんが、使用する場合は選択できLIKE
ます=
「Silkeborg Distributionscenter」が所有者です (はい、テーブルとパラメーターの両方に二重スペースがあります)
したがって、パラメータは次のとおりです。
DECLARE @Owners nvarchar(MAX) = 'Silkeborg Distributionscenter'
私は試した:
SELECT * FROM Vehicle WHERE @Owners = Owner
--This gave me all the correct results
それで:
SELECT * FROM Vehicle WHERE @Owners LIKE Owner
--No result
それで:
SELECT * FROM Vehicle WHERE @Owners COLLATE Danish_Norwegian_CI_AS LIKE Owner COLLATE Danish_Norwegian_CI_AS
--No result
一度に所有者の配列を選択できるようにする必要があるため、LIKE を使用する必要があります。したがって、元のselectステートメントは次のようになります
SELECT * FROM Vehicle WHERE ('|' + @Owners + '|' like '%|' + Owner + '|%')
--No result
何か案は?
編集: @Owners は「Fredericia Distributionscenter」ですが、「Silkeborg Distributionscenter」ではありません。両方ともテーブル内にあります。
「Silkeborg Distributionscenter」のテキストで機能するものはありますか?