2011-12-19 20 views
1

は、私はこのクエリを持って言う:postgresql - どのようにクエリ結果を操作するには?

SELECT name::text, id::int, pass:bool FROM mytable; 

私にこのビューテーブルを与える:私は私にこれを与えることはpostgresに伝えるにはどうすればよい

name id pass 
------------------ 
A  123 t 
B  234 t 
C  345 f 

代わり

name id pass 
-------------------- 
A  123 passed 
B  234 passed 
C  345 failed 

私はCASE WHEN condition THEN result;を試してみましたしかしそれはちょうど私に別のコラム「ケース」を与えます。
(postgresのための簡単な方法はありません場合、私は主に私が望むデータを得るためにそれを使用しているため、いずれかpsycopg2にあるのでしょうか?)事前に

おかげ

+1

なぜ列をキャストしますか? –

+0

あなたのアプリケーション(IMO)にそのような書式が本当に属している場合、英語を読んでいない人を気にするならば、シンプルな辞書はPythonでトリックするか、ローカライズされた文字列処理システムと組み合わせることができます。 –

+0

@A.H oh haha​​実際には、私はちょうど皆さんにデータ型を見せたいと思っていました – BPm

答えて

6
SELECT name::text, id::int, 
CASE WHEN pass = true THEN 'passed' ELSE 'failed' END AS pass 
FROM mytable; 
4

あなたは、このいずれかを使用できます。

select case pass when true then 'passed' when false then 'failed' else null end pass from... 
関連する問題