アプリ版:「スタンプのみでお礼する」機能のリリースについて

SQLについて質問です。
日付値の計算の練習で、dual表を用いて、
今日の日付、誕生日、生まれてから今日まで6日数、月数を表示したいです。
今日の日付はsysdate関数を用います。誕生日は1980-3-16で実行します。

今日   誕生日    日数  月数
---- ------ ----- -----
18-08-14 1980-3-16 14030 460

こんなふうに表示するにはどうしたら良いでしょうか?

A 回答 (1件)

カテゴリがSQL Serverになっていますが、Oracleと適切に選ぶようにしてください。


dualやsysdateなどで判断できなくはないですが、他のRDBMSでもダミーの空の表としてdualを定義することもできます。
日付の演算、書式、変換などは、RDBMSによる機能差が多いです。

SELECT
TO_CHAR(kyou,'YYYY-MM-DD') 今日,
TO_CHAR(tanjyo,'YYYY-MM-DD') 誕生日,
kyou - tanjyo 日数,
trunc(months_between(kyou,tanjyo)) 月数
FROM
(SELECT
DATE '2018-08-14' kyou,
DATE '1980-3-16' tanjyo
FROM dual) x;

DATE '2018-08-14'

TRUNC(SYSDATE)
に変えれば今日の日付になります。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す