選択した日付から年のみを取得するクエリを作成しようとしています。つまりselect ASOFDATE from PSASOFDATE;
戻り値 11/15/2012
、しかし2012
。どうすれば年だけを取得できますか? YEAR
関数を使用できることは知っていますが、どうすればよいかわかりません。
これは私のために働いた:
SELECT EXTRACT(YEAR FROM ASOFDATE) FROM PSASOFDATE;
これはどう?
SELECT TO_CHAR(ASOFDATE, 'YYYY') FROM PSASOFDATE
columnNameをYEAR
のパラメーターとして渡すだけです
SELECT YEAR(ASOFDATE) from PSASOFDATE;
別の方法は、DATE_FORMAT
SELECT DATE_FORMAT(ASOFDATE, '%Y') from PSASOFDATE;
更新1
値がMM/dd/YYYYの形式のvarcharであることに間違いありません。
SELECT YEAR(STR_TO_DATE('11/15/2012', '%m/%d/%Y'));
すべてのクエリが失敗した場合の最終解決
SUBSTRING
を使用します
SELECT SUBSTRING('11/15/2012', 7, 4)