課題: PostgreSQLにdualがない
Oracleを業務でよく使っている人は、
特定のテーブルを利用しないデータベースアクセスでDUAL
表を使っています。
Oracleをセットアップしたときから存在する特別なテーブルで、
SELECTでDBの時刻取得など関数の結果を使いたい場合に用いられます。
Oracleの場合
-- 現在日
select SYSDATE from DUAL;
PostgreSQLではこのDUAL
表がないのですが同様のことができます。
PostgreSQLでの解決方法
FROM
句を省略して書くことで対応できます。
固定文字取得
-- 固定文字
SELECT 'hello!';
現在日取得
-- 現在日
SELECT current_date;
現在日時取得
-- 現在日時
SELECT now();
-- 現在日時(日付書式指定)
SELECT TO_CHAR(now(), 'YYYY/MM/DD HH24:MI:SS');