我想查询一个列是一个不是来自表的硬编码值,可以这样做吗?我基本上需要它作为占位符,我将在稍后回来并填写。
示例:
SELECT
hat,
shoe,
boat,
somevalue = 0 as placeholder
FROM
objects
然后我会稍后遍历此查询并填写占位符
在这个例子中someValue不是对象中的一个字段,我需要伪造它。我在coldfusion中执行此操作并使用两个数据源来完成一个查询。我已经尝试过space()函数但是无法使它工作。
感谢。
答案 0 :(得分:81)
SELECT
hat,
shoe,
boat,
0 as placeholder
FROM
objects
'' as placeholder
表示字符串。
答案 1 :(得分:8)
这适用于大多数数据库。您还可以选择一个空白字符串作为额外列,如下所示:
Select
Hat, Show, Boat, '' as SomeValue
From
Objects
答案 2 :(得分:2)
对于varchars,您可能需要执行以下操作:
select convert(varchar(25), NULL) as abc_column into xyz_table
如果您尝试
select '' as abc_column into xyz_table
填充后,您可能会收到与截断相关的错误或空值问题。
答案 3 :(得分:1)
上面的答案是正确的,我认为是“最佳”的答案。但是为了尽可能完整,您也可以使用queryAddColumn直接在CF中执行此操作。
请参阅http://www.cfquickdocs.com/cf9/#queryaddcolumn
同样,在数据库级别进行此操作会更有效...但最好尽可能多地了解其他选项(IMO,当然):)
答案 4 :(得分:0)
谢谢,在PostgreSQL中,此方法适用于boolean
SELECT
hat,
shoe,
boat,
false as placeholder
FROM
objects
答案 5 :(得分:-1)
SELECT
hat,
shoe,
boat,
0 as placeholder -- for column having 0 value
FROM
objects
--OR '' as Placeholder -- for blank column
--OR NULL as Placeholder -- for column having null value