web-dev-qa-db-ja.com

SQLクエリで空白/ハードコードされた列を作成するにはどうすればよいですか?

テーブルからではなくハードコードされた値である列を持つクエリが必要です、これはできますか?基本的には、後で戻って記入するプレースホルダーとして必要です。

例:

SELECT
hat,
shoe,
boat,
somevalue = 0 as placeholder
FROM
objects

後でこのクエリをループして、プレースホルダーに入力します

この例では、someValueはオブジェクトのフィールドではないため、偽造する必要があります。これをコールドフュージョンで行い、2つのデータソースを使用して1つのクエリを完了します。 space()関数を試しましたが、機能させることができませんでした。

ありがとう。

33
tylercomp
SELECT
    hat,
    shoe,
    boat,
    0 as placeholder
FROM
    objects

そして、'' as placeholderは文字列です。

81
Galz

これはほとんどのデータベースで動作するはずです。次のように、追加の列として空の文字列を選択することもできます。

Select
  Hat, Show, Boat, '' as SomeValue
From
  Objects
8
g.d.d.c

Varcharsの場合、次のような操作が必要になる場合があります。

select convert(varchar(25), NULL) as abc_column into xyz_table

しようとしたら

select '' as abc_column into xyz_table

設定すると、切り捨てに関連するエラーやnull値の問題が発生する場合があります。

3

上記の答えは正しいものであり、私が「最良の」答えと考えるものです。ただし、できるだけ完全にするために、queryAddColumnを使用してCFで直接これを行うこともできます。

http://www.cfquickdocs.com/cf9/#queryaddcolumn を参照してください

繰り返しますが、データベースレベルで行う方が効率的です...しかし、可能な限り多くの代替案を知っておくのは良いことです(もちろんIMO):)

1
charliegriefer

PostgreSQLでは、これはbooleanで機能します

SELECT
hat,
shoe,
boat,
false as placeholder
FROM
objects
0
mapping dom