【发布时间】:2014-12-06 07:44:09
【问题描述】:
我有一个 sql 查询,执行时出错
"text、ntext 和 image 数据类型不能进行比较或排序,除非使用 IS NULL 或 LIKE 运算符。"
查询是
SELECT Count(*) AS present,
(SELECT Count(counted)
FROM (SELECT attdate AS counted
FROM gtab85
WHERE attdate >= '01/10/2014'
AND attdate <= '11/10/2014'
GROUP BY attdate) AS derived) AS working,
gtab86.staffname
FROM gtab85 AS A
INNER JOIN gtab86
ON gtab86.staffid = A.userid
WHERE attdate >= '01/10/2014'
AND attdate <= '11/10/2014'
GROUP BY userid,
staffname
当我执行以下部分时
SELECT Count(*) AS present,
(SELECT Count(counted)
FROM (SELECT attdate AS counted
FROM gtab85
WHERE attdate >= '01/10/2014'
AND attdate <= '11/10/2014'
GROUP BY attdate) AS derived) AS working
我以未排序的方式获得结果。请帮助我解决此问题。
【问题讨论】:
-
显然
staffname是一个 text 或 ntext 列。如果希望在 group by 子句中使用,可以将其转换为 varchar。
标签: sql-server-2008