Date 忽略周六和周日

Date 忽略周六和周日,date,mysql,Date,Mysql,我正在从我的客户数据库(mysql)中提取过去十天的所有记录 $offset1=strottime(“-10天”); $date3=日期(“Y-m-d”,$offset1) 从日期介于“$date3”和“$date”之间且customer.custid=“$custid”订单按日期描述的客户中选择* 我想省去周六或周日的日期,并希望将其放在我的查询中,而不是php中 如果您能提供帮助,谢谢您可以使用MySQL中的DayOfWeek函数 SELECT * FROM customers WHER

我正在从我的客户数据库(mysql)中提取过去十天的所有记录
$offset1=strottime(“-10天”); $date3=日期(“Y-m-d”,$offset1)

从日期介于“$date3”和“$date”之间且customer.custid=“$custid”订单按日期描述的客户中选择*

我想省去周六或周日的日期,并希望将其放在我的查询中,而不是php中


如果您能提供帮助,谢谢

您可以使用MySQL中的
DayOfWeek
函数

SELECT * 
FROM customers 
WHERE date between '$date3' and '$date'
      AND DayOfWeek(date) <> 1
      AND DayOfWeek(date) <> 7
      AND customer.custid = '$custid' 
ORDER by date DESC
选择*
来自客户
其中日期介于“$date3”和“$date”之间
和星期一(日期)1
和星期一(日期)7
和customer.custid='$custid'
按日期说明订购

您可以使用MySQL中的
DayOfWeek
函数

SELECT * 
FROM customers 
WHERE date between '$date3' and '$date'
      AND DayOfWeek(date) <> 1
      AND DayOfWeek(date) <> 7
      AND customer.custid = '$custid' 
ORDER by date DESC
选择*
来自客户
其中日期介于“$date3”和“$date”之间
和星期一(日期)1
和星期一(日期)7
和customer.custid='$custid'
按日期说明订购

我认为您可以使用DAYNAME功能:

AND DAYNAME(date) NOT IN ('Saturday', 'Sunday')

我认为您可以使用DAYNAME功能:

AND DAYNAME(date) NOT IN ('Saturday', 'Sunday')

您可以研究如何表示绑定检查,看看是否可以找到删除这对检查的方法:
DayOfWeek(date)%7>1
。与往常一样,请对此进行基准测试,因为它更难阅读,而且引擎可能会为您执行此操作。您可以尝试如何表达绑定检查,以查看是否可以找到删除这对检查的方法:
DayOfWeek(date)%7>1
。和往常一样,基准测试这一点,因为它更难阅读,引擎可能会为您这样做。