使用mysql原生查询和thinkphp数据库查询分别写一个查询语句要求剔除节假日
MySQL 原生查询语句:
SELECT * FROM your_table WHERE DATE_FORMAT(your_date_column, '%Y-%m-%d') NOT IN (
SELECT DATE_FORMAT(holiday_date, '%Y-%m-%d') FROM holidays_table
)
其中,your_table 是你要查询的表名,your_date_column 是包含日期的列名,holidays_table 是包含节假日日期的表名,holiday_date 是包含节假日日期的列名。
ThinkPHP 数据库查询语句:
$holidayDates = Db::name('holidays_table')->column('holiday_date');
$result = Db::name('your_table')
->whereNotIn('DATE_FORMAT(your_date_column, "%Y-%m-%d")', $holidayDates)
->select();
其中,holidays_table 是包含节假日日期的表名,holiday_date 是包含节假日日期的列名,your_table 是你要查询的表名,your_date_column 是包含日期的列名。
这两个查询语句都是通过将日期格式化为 %Y-%m-%d 的形式,然后使用 NOT IN 或 whereNotIn 来剔除节假日日期。请根据实际情况修改表名和列名。
原文地址: http://www.cveoy.top/t/topic/i7kU 著作权归作者所有。请勿转载和采集!