我想知道是否有办法用SQL查询来完成此操作。将静态值添加到SQL查询的结果
我有一个表,让我们把它称为“LISTOFTHINGS”有兴趣“ID”和“NAMEOFTHING”两个领域
我想要做的是建立一个查询,以便得到什么返回的结果此查询:
SELECT ID, NAMEOFTHING FROM LISTOFTHINGS ORDER BY NAMEOFTHING
和第一行上述查询的具有“-1‘所有的东西’”作为值之前添加一行。
所以,如果表中有以下三项:
1, 'THING 1'
3, 'THING 3'
2, 'THING 2'
然后我想要的结果看起来是这样的:
-1, 'ALL THINGS'
1, 'THING 1'
2, 'THING 2'
3, 'THING 3'
我知道我可以做查询和创建列表与代码,但在我使用这个VB6程序内,我有一个第三方应用程序(我没有代码)采取查询来填充结果的ACTIVEX表控件。我没有挂钩来添加静态值。
我也知道我可以在表中为“-1,'所有事情''放一个记录”,但问题是,如果我这样做,我将需要改变程序中的很多地方在处理时忽略该记录。
'ALL THINGS'的值是伪记录,它处理程序某一部分的特例。
我相信DB2相当于甲骨文DUAL虚表是SYSIBM .SYSDUMMY1 – dave
其实,是的!这正是我正在寻找的(假设它对于我正在使用的DBMS是有效的SQL)。我在挖掘文档,试图找出如何做一个静态查询,但我的SQL有点斑点!谢谢! –
应该可能使用UNION ALL而不是UNION。 UNION会检查是否有需要消除的重复记录,这会花费额外的时间。 UNION ALL保留所有记录,但在这种情况下,不应该有任何重复记录。 – dave