我正在尝试使用下面的SQL语句来计算年龄
round(datediff(now() - dateofbirth / 365))
给出以下错误,
1582 - 调用本机函数'datediff'
时参数计数不正确
答案 0 :(得分:5)
问题: datediff
需要两个参数,例如DATEDIFF(expr1,expr2)
,根据给定的问题,只有一个参数因此出错。
解决方案:您必须使用,
round(datediff(now() , (dateofbirth / 365)))
^
datediff
返回expression1 – expression2
,所以你不必自己做:)同时确保参数是日期或日期和时间表达式
编辑:调用DATEDIFF
后需要@Jonathan Leffler指出的另一个错误。
round(datediff(now(),dateofbirth)/365)
答案 1 :(得分:1)
要查看今天比赛,请使用此
SELECT `match_id`, `match_date` FROM `matches`
WHERE DATEDIFF ( CURDATE(),`match_date`) =0
昨天比赛
SELECT `match_id`, `match_date` FROM `matches`
WHERE DATEDIFF ( CURDATE(),`match_date`) =1
Tommorow匹配
SELECT `match_id`, `match_date` FROM `matches`
WHERE DATEDIFF ( CURDATE(),`match_date`) =0