mysql - 在mysql中显示周数

标签 mysql

我需要在mysql中显示月份的周数,目前我可以在执行此查询时获取一年的周数。我每周检索结果,需要显示周数(如一月第一周、一月第二周、一月第三周等)。有谁可以帮我做到这一点吗?

SELECT  d.draftID_PK,
          d.clientID_FK,
          count(d.quoteNr) AS totalquote,
          DATE_FORMAT (d.draftDate,'%u  %M %Y') as draftDate,
          c.clientName
FROM draft d
INNER JOIN client c ON c.clientID_PK = d.clientId_FK
WHERE   d.draftDate<CURDATE() AND d.draftDate>'2013-01-05'
        AND c.clientName = '{$client_name}' 
GROUP BY DATE_FORMAT (d.draftDate,'%u')
ORDER BY d.draftDate DESC

最佳答案

我做了一些东西,也许这可以帮助你,但周数根据一周的开始而变化,例如: 在巴西,一周从周日开始。所以看看这是否可以解决您的问题。

SET @date:='2014-08-31';
SELECT 
    @first := date_add(
        date_add(
            LAST_DAY(@date),
            interval 1 DAY
        ),
        interval -1 MONTH
    ) AS first_day,
    @date,
    -- EXAMPLE 1
    WeekofYear(@date),
    WeekofYear(@first),
    WeekofYear(@date)-(WeekofYear(@first)-1) Num_Week,
    -- EXAPLE 2 - Works in Brazil perfectly
    Week(@date),
    Week(@first),
    Week(@date)-(Week(@first)-1) Num_Week_Brazil

关于mysql - 在mysql中显示周数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22136175/

相关文章:

php - Laravel 内连接说变量未定义

php - magento 安装后使用旧数据库

mysql - 从 mysql 中拖动并进行计数和限制

php - 从 PHP 的输入中获取特定的数组值

php - 是否可以在不关闭两步验证的情况下使用 PHPMailer?

mysql - 返回 bool 值的存储过程?

php - 有没有比这种方式更好的方法在 MySQL 中执行 SELECT 查询并在 PHP 中对它们进行排序?

mysql - 使用数据库给出错误信息

没有重复键的 MySQL INSERT/UPDATE

c# - 如何使用php将UWP中的图像保存到MYsql中