Php 如何在我的查询中使用函数max current date
我有两个问题。我想获得Php 如何在我的查询中使用函数max current date,php,mysql,subquery,Php,Mysql,Subquery,我有两个问题。我想获得最长日期。如果我得到MAX date我的子查询如下所示 问题1: select tb_format.format from tb_format where tb_format.id not in ( select penyakit.format from penyakit where penyakit.id_puskesmas =$ id
最长日期
。如果我得到MAX date
我的子查询如下所示
问题1:
select
tb_format.format
from
tb_format
where
tb_format.id not in
(
select
penyakit.format
from
penyakit
where
penyakit.id_puskesmas =$ id
AND MONTH(penyakit.waktu_upload) = MONTH(CURRENT_DATE)
)
我想在这个月(penyakit.waktu上传)
上添加MAX
问题2:
select
tb_format.format
from
tb_format
where
tb_format.id not in
(
select
penyakit.format
from
penyakit
where
penyakit.id_puskesmas =$ id
AND MAX(MONTH(penyakit.waktu_upload)) = MONTH(CURRENT_DATE) -- HERE
)
但是,我得到了一个错误:
在WHERE子句中不能有
MAX
,可以在HAVING子句中有它(稍微解释一下区别)
必须有一个GROUP BY子句,这为MAX操作提供了基础,HAVING子句几乎是GROUP BY的WHERE子句
不确定
$id
是什么,所以我刚从您的原始代码中复制,但这需要更正。请添加一些示例数据和预期输出。在逻辑上添加您试图实现的目标的详细信息。基于这些信息,可以更有效地重新构造查询。请浏览此链接一次:请显示代码和/或说明错误。图片上的文字太小,有些人看不懂。此外,搜索引擎无法为将来的访问者索引图像上的文本。谢谢。我不知道MAX不能在哪里使用子句。非常有用。谢谢你,兄弟
select
penyakit.format
from
penyakit
where
penyakit.id_puskesmas =$ id
group by
penyakit.format
having
MAX(MONTH(penyakit.waktu_upload)) = MONTH(CURRENT_DATE)