Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将我的MySQL SQL语句更改为MS SQL_Mysql_Sql Server - Fatal编程技术网

将我的MySQL SQL语句更改为MS SQL

将我的MySQL SQL语句更改为MS SQL,mysql,sql-server,Mysql,Sql Server,有人能帮我把这个MySQL语句转换成MS SQL,在SQL 2008 R2上运行吗 SELECT UNIX_TIMESTAMP(summary.date) as epoch_date, round(SUM(CASE WHEN meters.group != '' THEN kWh ELSE 0 END),2) as total, round(SUM(CASE WHEN meters.group = 'eastern' THEN kWh ELSE 0 END),2) as eastern, rou

有人能帮我把这个MySQL语句转换成MS SQL,在SQL 2008 R2上运行吗

SELECT UNIX_TIMESTAMP(summary.date) as epoch_date,
round(SUM(CASE WHEN meters.group != '' THEN kWh ELSE 0 END),2) as total,
round(SUM(CASE WHEN meters.group = 'eastern' THEN kWh ELSE 0 END),2) as eastern,
round(SUM(CASE WHEN meters.group = 'western' THEN kWh ELSE 0 END),2) as western,
round(SUM(CASE WHEN meters.group = 'central' THEN kWh ELSE 0 END),2) as central
FROM summary, meters
WHERE summary.webmeterID = meters.webmeterID
AND date BETWEEN
DATE_SUB(CURRENT_DATE, INTERVAL 3 YEAR) 
AND DATE_SUB(CURRENT_DATE, INTERVAL 1 DAY)
GROUP by date

什么不起作用?谢谢,我收到错误:“关键字“group”附近的语法不正确。”[date]和[group]是SQL Server 2008中的保留字,如果用作列名(不推荐!),则应使用方括号([])。
SELECT

CASE

WHEN DATEDIFF(second,'1970-01-01 00:00:00',summary.[date])>0

THEN DATEDIFF(second,'1970-01-01 00:00:00',summary.[date])

ELSE

0

END as epoch_date,

round(SUM(CASE WHEN meters.[group] != '' THEN kWh ELSE 0 END),2) as total,

round(SUM(CASE WHEN meters.[group] = 'eastern' THEN kWh ELSE 0 END),2) as eastern,

round(SUM(CASE WHEN meters.[group] = 'western' THEN kWh ELSE 0 END),2) as western,

round(SUM(CASE WHEN meters.[group] = 'central' THEN kWh ELSE 0 END),2) as central

FROM summary, meters

WHERE summary.webmeterID = meters.webmeterID

AND [date] BETWEEN

DATEADD(year,-3,GETDATE())

AND DATEADD(day,-1,GETDATE())

GROUP by [date]