Oracle Databaseでは、 TO_CHAR(datetime)
を使用できます。 指定した方法でフォーマットされた日時値を返す関数。
この関数を使用して、日付から曜日名(および日時値の他の部分)を返すことができます。
終日の名前
日付から曜日名を返す場合は、完全な曜日名またはその省略形を取得するオプションがあります。
完全な日の名前を取得するには、DAY
format要素がトリックを行います:
SELECT TO_CHAR(DATE '2037-10-03', 'DAY')
FROM DUAL;
結果:
SATURDAY
短い日の名前
省略された日の名前を取得するには、DY
を使用します :
SELECT TO_CHAR(DATE '2037-10-03', 'DY')
FROM DUAL;
結果:
SAT
キャピタライゼーション
必要に応じて、大文字と小文字を使用できます。これにより、出力の大文字と小文字が決まります。
SELECT
TO_CHAR(DATE '2037-10-03', 'Day') AS "Day",
TO_CHAR(DATE '2037-10-03', 'day') AS "day",
TO_CHAR(DATE '2037-10-03', 'Dy') AS "Dy",
TO_CHAR(DATE '2037-10-03', 'dy') AS "dy"
FROM DUAL;
結果:
Day day Dy dy ____________ ____________ ______ ______ Saturday saturday Sat sat
言語
日の名前の言語は、NLS_DATE_LANGUAGE
を使用して明示的に決定されます。 初期化パラメータまたはNLS_LANGUAGE
を使用して暗黙的に 初期化パラメータ。
NLS_LANGUAGE
の値を明示的に設定できます ALTER SESSION
のパラメータ 声明。これを行うと、NLS_DATE_LANGUAGE
の値も暗黙的に設定されます パラメータ。
ただし、 NLS_DATE_LANGUAGE
を設定します パラメータは、 NLS_LANGUAGE
の値を変更しません パラメータ。これにより、必要に応じてスペル値を返す
NLS_DATE_LANGUAGE
の設定例を次に示します。 別の言語へのパラメータ:
ALTER SESSION SET NLS_DATE_LANGUAGE = 'GERMAN';
結果:
Session altered.
これで、日付から曜日名を返すと、指定した言語で返されます:
SELECT
TO_CHAR(DATE '2037-10-03', 'DAY') AS "Full Day Name",
TO_CHAR(DATE '2037-10-03', 'DY') AS "Short Day Name"
FROM DUAL;
結果:
Full Day Name Short Day Name ________________ _________________ SAMSTAG SA
デフォルトの言語は、言語を指定する3番目のパラメーターを使用して関数レベルでオーバーライドできます。
ALTER SESSION SET NLS_DATE_LANGUAGE = 'GERMAN';
SELECT
TO_CHAR(
DATE '2037-10-03',
'Day',
'NLS_DATE_LANGUAGE = Spanish'
)
FROM DUAL;
結果:
Sábado
Oracleで日時値をフォーマットするために使用できるフォーマット要素は他にもたくさんあります。完全なリストについては、Oracleの日時フォーマット要素のリストを参照してください。