Metabaseで数字8桁で記録された日付を扱う

COBOL派生の環境から移行された情報システムを利用していると、日付が8桁の数字 (例: 20200621) で日付を格納していることがあると思う。 Metabaseでは、画面から日付をdatepickerで入力して検索条件等に利用できるのだが、それは当然のように数字8桁で格納された日付とは一致や比較できない。 データベースはOracle Databaseなので、dateparse()で数字8桁を日付データに変換できると思ったのだが、エラーになってできなかった。 逆に、Metabaseの与える日付を数字8桁に変換することで一致や比較ができるようになったので、例を書いておく。

select
	*
from
    table1
where
	column1 = 'DATA'
	[[and StartDate <= to_char({{TODAY}}, 'yyyymmdd')
	  and EndDate >= to_char({{TODAY}}, 'yyyymmdd')]]

ここで、TODAYがMetabaseが与える変数である。

0 件のコメント:

コメントを投稿

NetBSDでホスト名にアンダースコア(_)が入っていても不正なホスト名と認識されないようにする

Bloggerのpreviewは、アンダースコア(_)が入っているホスト名を利用している。 NetBSDは、かつてはアンダースコア入りのホスト名は許されていなくて、 libc resolver library does not resolve host names wi...