gpt4 book ai didi

sql - 在 CONTAINS 中使用 CAST 或 CONVERT - SQL Server

转载 作者:行者123 更新时间:2023-12-02 03:11:11 26 4
gpt4 key购买 nike

我正尝试在 SQL 查询中使用 CASTCONVERT 函数,如下所示:

SELECT *
FROM [SQL_BMS].[dbo].[GEID]
WHERE CONTAINS(CONVERT(nvarchar(max), NUID), 'titre')

SELECT *
FROM [SQL_BMS].[dbo].[GEID]
WHERE CONTAINS(CAST(NUID as nvarchar(max)), 'titre')

但我收到错误:

Incorrect syntax near the keyword 'CONVERT'

Incorrect syntax near the keyword 'as'

那么如何将我的 NUID 列从 Int 转换为 nvarchar

最佳答案

您需要创建一个 view使用 SCHEMABINDING,使用一些 ID 和连接的列。

CREATE VIEW dbo.[view_GEID]  
WITH SCHEMABINDING
AS
SELECT NUID,
Col1+Col2+CAST(Col3 as nvarchar(50))... as ConcatColumn
FROM dbo.GEID

然后创建full-text该 View 的索引。然后你可以使用CONTAINS用于搜索目的。

SELECT *
FROM [SQL_BMS].[dbo].[view_GEID]
WHERE CONTAINS(ConcatColumn, 'titre')

另一种方法是连接您需要的所有列并使用 LIKE ,但这可能会导致性能下降。

SELECT *
FROM [SQL_BMS].[dbo].[GEID]
WHERE Col1+Col2+CAST(Col3 as nvarchar(50))... LIKE '%titre%'

关于sql - 在 CONTAINS 中使用 CAST 或 CONVERT - SQL Server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40014571/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com