在我的表中有一個星期和日期的列。我怎樣才能到2015年間每週取數據 52年至2016年周 2. 對不起我的英語不好:(如何在Mysql中在不同年份的數週之間獲取數據
-1
A
回答
5
嘗試這種查詢可以解決你的問題。
SELECT *
FROM TABLE
WHERE (WEEK(date)>=52 AND YEAR(date)=2015) OR
(WEEK(date)<=2 AND YEAR(date)=2016);
+0
感謝您的快速響應,我會試試這個,並讓你知道,如果它解決我的問題 –
+0
這解決了我的問題 –
1
這是一個替代解決方案,您不需要在數據庫中記錄週數,看到Sadikhassan已經爲OP的原始請求提供瞭解決方案
沒有必要mai爲您的週數添加一個單獨的列。只需保留日期記錄並丟失週數欄。由於您使用PHP作爲您的前端,因此您可以使用此方法從所需的週數和年份中獲取Date。
$range_start = new DateTime();
$range_start->setISODate($year,$week_no);//give 2015 and 52 here
echo $range_start->format('d-M-Y'); // 21 DEC 2015
$range_end = new DateTime();
$range_end->setISODate($year,$week_no);//give 2016 and 2 here
echo $range_end->format('d-M-Y'); //11 January 2016
//IDK if this is necessary because I don't work in PHP but I am gonna convert it to strings
$start_date_str = $range_start->format('d-M-Y');
$end_date_str = $range_end->format('d-M-Y');
現在你已經得到了你的各自的起始日期和結束日期,你可以簡單地查詢使用它們:
$result = mysql_query("SELECT * FROM YOURTABLE WHERE date >= '" . $start_date_str . "' AND date <= '" . $end_date_str . "' ORDER by id DESC");
相關問題
- 1. 如何在年份更改之間平均分割週數
- 2. 查詢獲取日期,月份和年份之間的數據
- 3. SQL查詢在不同年份的兩週之間搜索
- 4. 從特定年份的週數中獲取數據
- 5. PHP - 獲取上週的年份數
- 6. 如何在datetime數據框中獲取多年的月份數?
- 7. MySQL在特定月份,年份之間獲取記錄
- 8. 年份與週年之間的區別?
- 9. 獲取兩個日期之間的數年,數月和數週
- 10. 如何在mysql中的兩個日期之間獲取數據?
- 11. vb.net與MySQL如何選擇不同年份的日期之間?
- 12. 如何使用年份和週數讀取數據文件
- 13. 獲取兩個日期之間不包含年份的天數
- 14. 在年份和月份中獲取數據庫中的記錄
- 15. 獲取不同年份之間的天/月的最早日期
- 16. 如何獲取給定週數和年份的首末日期?
- 17. 如何在Doctrine中獲取不同年份的datetype?
- 18. 如何在JAVA中從MySQL獲取當前年份和月份?
- 19. 如何從週數和年份獲取日期
- 20. 從數據庫中獲取年份
- 21. 如何在MySQL中獲取不同類型的相關數據?
- 22. 在SQL Server中獲取每週給定的一週數,月份數和年份的日期範圍
- 23. MYSQL在特定月份和年份之前獲取記錄
- 24. MySQL中相同月份/不同年份的時間戳比較
- 25. Mysql獲取兩行之間的數據
- 26. Mysql - 在同一個查詢中獲取不同時間間隔的數據
- 27. 如何在psql中獲取當前月份週日的數量?
- 28. 如何僅從今年的mysql數據庫獲取數據
- 29. 從不同的年份在PHP中獲取數據(即從2016年11月1日到2017年1月01日)
- 30. 從授予者年份獲取數據周(也是月份)明智的
只需要爲 – amdixon
@NSNoob日期欄如果你'flag'問題爲重複那麼它必須包含可接受的答案。 – Sadikhasan
@Sadikhasan問題是關於在兩個日期範圍(2015年第52周開始日期和2016年第2周結束日期)之間取數據。他在數據庫設計方面存在問題(在日期和星期中使用多列),但他們並沒有像我看到的那樣使他的問題變得獨特。 – NSNoob