我正在创建一个新查询,我想在其中添加三列(相同格式):
周数(截至08)/月(截至2月)/年(截至2019)
SELECT hd.F91 AS [PO Number],
hd.F1032 AS [Trs Number],
hd.F76 AS [Order Date],
hd.F27 AS [Vendor ID],
hd.F334 AS [Vendor Name],
hd.F1127 AS Admin,
hd.F1068 AS State,
hd.F1067 AS Status,
tl.F65 AS Total,
DATEPART(wk,[Order Date]) AS [Week Number],
DATENAME('month',[Order Date]) AS Month,
DATENAME('year',[Order Date]) AS Year,
其余数据正在从我们的系统中提取,但是我试图根据一个已经存在的名为Order Date(日期格式)的列来获取这三列。
不幸的是,出现以下错误。欢迎所有尝试的建议。谢谢!
答案 0 :(得分:1)
这些函数在mysql中有效(与之前编辑问题的标签相同!!):
WEEK([Order Date], 1) AS [Week Number],
MONTHNAME([Order Date]) AS Month,
YEAR([Order Date]) AS Year,
根据需要更改1
中的参数WEEK
(https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_week)
答案 1 :(得分:0)
尝试一下,它在postgreSQL中对我有用 to_char([订购日期],“月”)
答案 2 :(得分:0)
此问题最初是为POSTGRES标签的。
ANSI标准功能是:
extract(week from "Order Date")
extract(month from "Order Date")
extract(year from "Order Date")
Postgres支持此标准语法。
如果需要字符串,可以使用to_char()
:
to_char("Order Date", 'WW')
to_char("Order Date", 'YYYY')
to_char("Order Date", 'Month')