使用 PHP/MySQL
我正在尝试创建一个选择语句,该语句从本周的最少一天获取数据(我正在使用它来显示某个玩家“本周”的数据)。一周从星期日开始。周日的数据可能并不总是存在,因此如果没有找到周日数据,那么它将使用找到的下一个最早的日期,周一、周二等。
我的日期列名为“theDate”,数据类型为“DATE”
查询需要类似于:
SELECT *
FROM table_name
WHERE name = '$username'
AND [...theDate = earliest day of data found for the current week week]
LIMIT 1
它将返回单行数据。
这是我尝试获取“本周”数据的查询,它似乎在周日无法正常工作,它什么也没显示:
SELECT *
FROM table_name
WHERE playerName = '$username'
AND YEARWEEK(theDate) = YEARWEEK(CURRENT_DATE)
ORDER BY theDate;
这是我用来获取“本月”数据的查询,即使找不到月份数据的第一天,它也可以使用,它将使用当前月/年中找到的最早数据日期(此查询非常适合我):
SELECT *
FROM table_name
WHERE playerName = '$username'
AND theDate >= CAST( DATE_FORMAT( NOW(),'%Y-%m-01') AS DATE)
ORDER BY theDate
LIMIT 1