2

数値フィールドを選択する Postgres で SQL クエリを実行しています。この SELECT の結果として文字列値を表示する必要があるため、次のCASEようなステートメントを使用しています。

Select 
case numeric_field
when 100 then 'some string'
when 200 then 'some other string'

問題は、数値フィールドに他の値 (300たとえば) がある場合、この値を (もちろん文字列として) 表示する必要があることです。CONVERT私はこのように他のものをつけようとします

...
else CONVERT(varchar(10),numeric_field)

しかし、うまくいきませんでした。どうすればいいですか?

4

1 に答える 1

4
SELECT CASE numeric_field
          WHEN 100 THEN 'some string'
          WHEN 200 THEN 'some other string'
          ELSE numeric_field::text
       END AS result
  • あなたの声明は不完全で、END欠落していました。ここでマニュアルを読んでください。
  • 数値フィールドをテキストとして出力するには、それを text:numeric_field::textにキャストするだけです。これは、SQL 標準呼び出しの Postgres 固有の短縮形です。

    cast (numeric_field AS text)
    
于 2013-03-01T14:21:15.180 に答える