我在数据库中有一个日期列Time
,我希望将其转换为4个新列
我在test
数据库
SELECT DATEPART(wk,`Time`), DATEPART(dd,`Time`),DATEPART(mm,`Time`),DATEPART(wk,`yyyy`), FROM `Test` WHERE 1
它有什么问题?
答案 0 :(得分:0)
您获取年份的语法错误以及From子句之前的额外(,)
尝试如下:
<HEUREKA>
<CATEGORY>
<CATEGORY_ID>971</CATEGORY_ID>
<CATEGORY_NAME>Auto-moto</CATEGORY_NAME>
</CATEGORY>
<CATEGORY>
<CATEGORY_ID>881</CATEGORY_ID>
<CATEGORY_NAME>Alkohol testery</CATEGORY_NAME>
<CATEGORY_FULLNAME>Heureka.cz | Auto-moto | Alkohol testery</CATEGORY_FULLNAME>
</CATEGORY>
</HEUREKA>
答案 1 :(得分:0)
在Sql server中,你不要用`包装你的标识符。
但是,由于Time
是sql server中的数据类型,我已用[]
包装它:
请尝试此查询:
SELECT DATEPART(Week,[Time]) As [Week],
DATEPART(Day,[Time]) As [Day],
DATEPART(Month,[Time]) As [Month],
DATEPART(Year,[Time]) As [Year]
FROM Test
此外,在select子句中的最后一个元素之后还有一个额外的逗号, 并且Where子句没有意义,所以我已将其删除。
答案 2 :(得分:0)
select datepart(week,GETDATE()) as [week]
, datepart(DAY,GETDATE()) as [DAY]
, datepart(month,GETDATE()) as [month]
,datepart(year,GETDATE()) as [year]
答案 3 :(得分:0)
您还可以使用you chose point no. 9
with coordinates: [x:0.80, y:0.64]
,YEAR
,MONTH
来简化它:
DAY