如何修改Joomla文章表MySQL查询以获取当日发布的文章
修改后的MySQL查询语句
以下是仅获取当日发布文章的修改后查询,主要做了两处关键调整:
- 简化分类与状态的判断逻辑,用
IN替代重复的OR条件,让代码更简洁 - 添加当日发布的筛选规则,通过日期函数匹配
publish_up的日期部分
$mainQuery = " SELECT a.title, a.catid, a.modified, a.state , f . * FROM `huyr3_content` a INNER JOIN ( SELECT item_id as id, value as field_value, field_name FROM `huyr3_fields_values` v INNER JOIN ( SELECT id, title as field_name FROM `huyr3_fields` n1) n2 ON (n2.id = v.field_id)) f ON ( a.id = f.id ) WHERE a.state = 1 AND a.catid IN (24, 41) AND DATE(a.publish_up) = CURDATE() ORDER BY `title` ASC";
关键逻辑说明
DATE(a.publish_up):提取publish_up字段的纯日期部分(忽略时分秒)CURDATE():MySQL内置函数,返回当前服务器的日期(格式为YYYY-MM-DD)- 两者结合就能精准筛选出当日发布、状态为已发布、分类ID为24或41的文章
内容的提问来源于stack exchange,提问作者marc
相关产品推荐
相关产品推荐

