php - 带时区的 MySQL WeekOfYear()?

标签 php mysql

我的网络服务器在法国,我的数据库设置了欧洲巴黎时区... 我的网站实际上是供居住在葡萄牙的人们使用的,他们得到的收入比我在法国少 -1H...

我正在使用此查询来获得本周的点赞数。问题是当它是法国的新一周时假设星期一 00h30,它应该仍然给我上周的结果,因为在葡萄牙它仍然是星期日 23h30....

"SELECT COUNT(*) as likes, user 
 FROM likes_week 
 WHERE WEEKOFYEAR(data_e) = WEEKOFYEAR(NOW()) 
 GROUP BY user ORDER BY likes"

所以我的问题是,有没有什么方法可以用 SQL 查询来做我想做的事情,或者我只能在 php 中做这件事?

最佳答案

我认为你可以做这样的事情

"SELECT COUNT(*) as likes, user 
 FROM likes_week WHERE date_column 
 BETWEEN DATEADD(hh, -1, GETDATE()) 
 AND DATEADD(week,-1,GETDATE()) 
 GROUP BY user ORDER BY likes"

请记住,我假设您的日期列的名称是“date_column” 我在 1 小时前到 1 周前约会。

希望这对您有所帮助!

关于php - 带时区的 MySQL WeekOfYear()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43880963/

相关文章:

php - 您推荐的 PHP/MySQL 用户注册系统是什么?

mysql - Tomcat6 jk-8009 服务使用 100% CPU

php - 尝试使用正则表达式从 php 中的 "suburb name"中提取 "12 street name, suburb name, CTG 1234"

php - php中单双引号的问题

php - 使用 php 和 jquery ajax 显示服务器时间

php - 使用循环显示单个医生下的所有患者

php - Apple Push Notification 在我的 godaddy 共享服务器上不起作用,连接失败 111 连接被拒绝 php 推送通知错误

java - 无法检索 blob 数据并在 JLabel-mySql 中显示

mysql - 使用多个字符串搜索 SQL 数据库

mysql - 什么是MySQL最好,最简单和免费的位置数据库?