2017-02-07 5 views
1

と比較して、計算フィールドを取得する方法:SELECTは、私は、Oracleでこの選択を構築することができますどのようにSYSDATE

SELECT DATETYPE_FIELD, DATETYPE_FIELD < SYSDATE AS IS_ON_DATE FROM MYTABLE 

DATETYPE_FIELDDATEフィールドです。 IS_ON_DATEフィールドにTRUE/FALSEのようなものを入力したいと考えています。 そのSELECTを使用すると、ORACLEでエラーが発生します。

どうすればいいですか?

答えて

4

Oracleにはブール型はありません。あなたは、このような真または偽表すために1または0を使用することができます。

select DATETYPE_FIELD, 
    case 
     when DATETYPE_FIELD < SYSDATE 
      then 1 
     else 0 
     end as IS_ON_DATE 
from MYTABLE 

または文字列 "true" と "false"

select DATETYPE_FIELD, 
    case 
     when DATETYPE_FIELD < SYSDATE 
      then 'true' 
     else 'false' 
     end as IS_ON_DATE 
from MYTABLE 
+0

あなたの速い答えをいただき、ありがとうございます。これは私にとっては良い解決策です。 – Falinsito

+0

@ user3749378 - 喜んで助けました。 :-) – GurV

関連する問題