0
変数CHARの条件:のTeradata:私はこれをしたい
select * from table
WHERE report_date = '31.08.2017'
report_dateはCHAR変数であると私は変更する必要がありますどのようにエラー3535 (文字列を数値に変換に失敗した)そうだ、私のクエリ?
変数CHARの条件:のTeradata:私はこれをしたい
select * from table
WHERE report_date = '31.08.2017'
report_dateはCHAR変数であると私は変更する必要がありますどのようにエラー3535 (文字列を数値に変換に失敗した)そうだ、私のクエリ?
のTeradataハンドル日付リテラルのTeradata形式'YY/MM/DD'
またはANSI
形式'YYYY-MM-DD'
のいずれかでnoobish質問に対する
SRY。 ANSI DATE
リテラルフォームDATE 'YYYY-MM-DD'
は、フォーマット設定またはデフォルトに依存しません。この場合
ANSI/BTET
つまり、トランザクション・モードに関係なく動作します
SELECT *
FROM TABLE
WHERE report_date = '2017-08-31';
のようになります。あなたのdate
列はCHAR
データ型であり、データとして記憶されている場合'31.08.2017'
、つまりDD.MM.YYYY
の場合は、to_date
を使用して手動でdate
にキャストする必要があります。
SELECT *
FROM TABLE
WHERE to_date(report_date, 'YYYY-MM-DD') = to_date('31.08.2017', 'dd.mm.yyyy')
または以下のように右側にあります。
select *
from TABLE
WHERE report_date = to_date('31.08.2017', 'dd.mm.yyyy');
又はcast
select *
from table
WHERE cast(report_date as date) = cast('31.08.2017' as date format 'dd.mm.yyyy')
というエラーを使用してはreport_date列は、数値データ・タイプを有することを示します。 – jarlh
Teradataに日付データ型がありませんか? – jarlh