Sql 按错误合并全部、文本字段和顺序
我有两个具有datedatetime、headlinevarchar和texttext等属性的表 现在我想合并这两个表并按日期时间排序。执行此操作时,我会得到以下错误: 工作表中只允许使用文本指针,不允许使用文本、ntext或图像列。查询处理器生成的查询计划要求工作表中有文本、ntext或image列 在反复尝试之后,我发现是文本属性导致了错误。但是怎么办呢?我试着投瓦查尔,但没有成功。这两个表在“文本”属性中都使用文本格式 此外,当删除订单时,它也可以正常工作。怎么办 下面是原始SQL查询,但您可以只回复上面的简化查询Sql 按错误合并全部、文本字段和顺序,sql,sql-server,sql-order-by,union,union-all,Sql,Sql Server,Sql Order By,Union,Union All,我有两个具有datedatetime、headlinevarchar和texttext等属性的表 现在我想合并这两个表并按日期时间排序。执行此操作时,我会得到以下错误: 工作表中只允许使用文本指针,不允许使用文本、ntext或图像列。查询处理器生成的查询计划要求工作表中有文本、ntext或image列 在反复尝试之后,我发现是文本属性导致了错误。但是怎么办呢?我试着投瓦查尔,但没有成功。这两个表在“文本”属性中都使用文本格式 此外,当删除订单时,它也可以正常工作。怎么办 下面是原始SQL查询,但
SELECT id, datetime, author, headline, intro, text, type, toppriority,
secondpriority, comments, companyid, '1' source
FROM Table1
UNION ALL
SELECT AutoID AS id, Dato AS datetime,
ID COLLATE SQL_Latin1_General_CP1_CI_AS AS author, NULL AS headline,
NULL AS intro, Notat COLLATE SQL_Latin1_General_CP1_CI_AS AS text,
CAST(NotatTypeID AS VARCHAR) AS type,
NULL AS toppriority, NULL AS secondpriority, NULL AS comments,
Selskabsnummer AS companyid, '2' source
FROM Table2
WHERE (NotatTypeID = '5') OR (NotatTypeID = '6')
ORDER BY datetime DESC
提前感谢一种方法是将union作为sup查询运行,然后对结果进行排序:
SELECT * FROM
(
SELECT id, datetime, author, headline, intro, text, TYPE, toppriority,
secondpriority, comments, companyid, '1' source
FROM Table1
UNION ALL
SELECT AutoID AS id, Dato AS datetime,
ID COLLATE SQL_Latin1_General_CP1_CI_AS AS author, NULL AS headline,
NULL AS intro, Notat COLLATE SQL_Latin1_General_CP1_CI_AS AS text,
CAST(NotatTypeID AS VARCHAR) AS TYPE,
NULL AS toppriority, NULL AS secondpriority, NULL AS comments,
Selskabsnummer AS companyid, '2' source
FROM Table2
WHERE (NotatTypeID = '5') OR (NotatTypeID = '6')
) a
ORDER BY datetime DESC
将datetime字段强制转换为索引中的某个文本字段怎么样?请注意,使用“datetime”和“text”作为字段/别名可能会非常混乱,并可能导致潜在问题。SQL、平台等的哪个版本。我认为该错误是SQL Server 2000特有的