我有一个载有大量信息的 Vehicle 表,但其中一列是 MSSQL 表中的“所有者”
但是当我使用时我无法选择其中一位所有者,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”文本中的内容是否有效?