我正在尝试创建一个只从选定日期获取年份的查询。即select ASOFDATE from PSASOFDATE;
会返回11/15/2012
,但我只想2012
。我怎么才能得到这一年?我知道可以使用YEAR
函数,但我不确定如何。
答案 0 :(得分:24)
这对我有用:
SELECT EXTRACT(YEAR FROM ASOFDATE) FROM PSASOFDATE;
答案 1 :(得分:17)
这个怎么样?
SELECT TO_CHAR(ASOFDATE, 'YYYY') FROM PSASOFDATE
答案 2 :(得分:3)
只需将columnName作为YEAR
SELECT YEAR(ASOFDATE) from PSASOFDATE;
另一种方法是使用DATE_FORMAT
SELECT DATE_FORMAT(ASOFDATE, '%Y') from PSASOFDATE;
更新1
我认为值为varchar,格式为MM / dd / YYYY,就是这种情况,
SELECT YEAR(STR_TO_DATE('11/15/2012', '%m/%d/%Y'));
如果所有查询都失败,最后一次调查
使用SUBSTRING
SELECT SUBSTRING('11/15/2012', 7, 4)
答案 3 :(得分:0)
CurrentUserProperties currentUser = (CurrentUserProperties)_currentUser.GetCurrentUser();
var userId = currentUser.Id;
var username = currentUser.Username;
var forename = currentUser.Forename;
var surname = currentUser.Surname;
答案 4 :(得分:-2)
SELECT YEAR(ASOFDATE) FROM PASOFDATE
Editted: 在任何情况下,如果您的日期是一个字符串,让我们将其转换为正确的日期格式。并选择年份。
SELECT YEAR(STR_TO_DATE(ASOFDATE, '%d-%b-%Y')) FROM PSASOFDATE
由于您正在尝试Toad,可以查看以下代码:
SELECT EXTRACT (TO_DATE(YEAR, 'MM/DD/YY') FROM ASOFDATE) FROM PSASOFDATE;