【发布时间】:2018-07-23 16:09:09
【问题描述】:
我在尝试运行此代码时收到此错误“操作数数据类型文本对于 min 运算符无效”
Select
UserID,
min(Description)
FROM Table1
GROUP BY UserID
我试过了
select min(cast(AttributeValue as varchar(max)))
但我无法让它工作。
有没有办法解决这个问题?谢谢
【问题讨论】:
-
varchar(min)?我知道你会选择MIN聚合,但即便如此,它仍然是varchar(max)。 (这里的max仅表示“大字符串”,就像曾经使用过的text,并且不会因您应用的运算符而异。) -
错误在这里给你答案。
text数据类型已经被弃用很长时间了。你应该使用varchar(max)。因此,您的查询将是:SELECT MIND(CAST(AttributeValue AS varchar(MAX)));。然而,期待糟糕的表现。 -
重要!在 SQL Server 的未来版本中将删除 ntext、text 和 image 数据类型。避免在新的开发工作中使用这些数据类型,并计划修改当前使用它们的应用程序。请改用 nvarchar(max)、varchar(max) 和 varbinary(max)。:ntext, text, and image (Transact-SQL)
-
文本块的 MINIMUM 值是多少?
-
MIN 可以与 numeric、char、varchar、uniqueidentifier 或 datetime 列一起使用
标签: sql sql-server aggregate