gpt4 book ai didi

sql-server-2008 - MAX(text) 返回操作数数据类型 text 对于 max 运算符无效。在 SQL Server 2008 中

转载 作者:行者123 更新时间:2023-12-04 06:25:29 24 4
gpt4 key购买 nike

我用 text我的一张表中的数据类型,我也使用 PIVOT也有查询。
我无法使用 MAX(AttributeValue)哪里AttributeValuetext 的类型.它返回以下错误 Operand data type text is invalid for max operator. .我怎么能在这里使用它,因为我被迫使用aggregate功能与 PIVOT .

编辑:
我关注了帖子http://msdn.microsoft.com/en-us/library/ms187993.aspx

我试图将数据类型转换为 nvarchar(max) .

ALTER TABLE dbo.MyTable
ALTER COLUMN AttributeValue NVARCHAR(MAX)

我也必须使用 Full Text Search选项也是。我收到以下错误 Cannot alter or drop column 'AttributeValue' because it is enabled for Full-Text Search.
SELECT 
[6B93119B-263B-4FED-AA89-198D26A3A3C4] DOB
,[F1A0D9D6-702E-4492-9EBC-63AD22E60E6A] CaseTitle
FROM MyTable PIVOT
( MAX(AttributeValue)
FOR AttributeID IN
(
[6B93119B-263B-4FED-AA89-198D26A3A3C4]
,[F1A0D9D6-702E-4492-9EBC-63AD22E60E6A]
)
) ResultTable

其中“AttributeValue”是“text”数据类型。我收到以下错误,

操作数数据类型文本对于 max 运算符无效。

好吧,我试图将字段转换为 nvarchar(max)。它给出了另一种类型的错误(在第四行)。
Incorrect syntax near '('

我错过了什么吗?

最佳答案

您可以将文本列转换为 varchar(max)。

select max(cast(AttributeValue as varchar(max)))
from YourTable

您可以在子查询中转换数据。
SELECT 
[6B93119B-263B-4FED-AA89-198D26A3A3C4] DOB
,[F1A0D9D6-702E-4492-9EBC-63AD22E60E6A] CaseTitle
FROM ( SELECT AttributeID,
CAST(AttributeValue as VARCHAR(MAX)) as AttributeValue
FROM MyTable
) AS T
PIVOT
( MAX(AttributeValue)
FOR AttributeID IN
(
[6B93119B-263B-4FED-AA89-198D26A3A3C4]
,[F1A0D9D6-702E-4492-9EBC-63AD22E60E6A]
)
) ResultTable

关于sql-server-2008 - MAX(text) 返回操作数数据类型 text 对于 max 运算符无效。在 SQL Server 2008 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8131898/

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