Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP中的SQL查询(WordPress)_Php_Sql_Wordpress - Fatal编程技术网

PHP中的SQL查询(WordPress)

PHP中的SQL查询(WordPress),php,sql,wordpress,Php,Sql,Wordpress,我需要PHP WordPress中SQL查询的帮助。 我有以下数据: | id | kw_id | date | position | 1 | 1 | 2020.08.23 | 16 | | 2 | 1 | 2020.10.02 | 17 | | 3 | 2 | 2020.10.08 | 5 | | 4 | 2 | 2020.10.08 | 6 | 我需要得到两行id=2,id=3。 查询标准有

我需要PHP WordPress中SQL查询的帮助。 我有以下数据:

| id | kw_id | date         | position
| 1  | 1     | 2020.08.23   | 16    |
| 2  | 1     | 2020.10.02   | 17    |
| 3  | 2     | 2020.10.08   | 5     |
| 4  | 2     | 2020.10.08   | 6     |
我需要得到两行id=2,id=3。 查询标准有两个:

获取具有最大日期的行 按kw\U id分组 当日期具有重复id=3和id=4时,则获取具有最小位置的行

结果必须如下所示:
提前感谢。

如果您使用的是MySQL 8+,那么第行提供了一个选项:

以cte为例 选择*,分区上的行号按id顺序按日期描述,位置rn 从你的桌子上 选择id、kw\U id、日期、位置 来自cte 其中rn=1;
上面对ROW_NUMBER的调用将每个id的最新日期放在第一位,而对于日期的关系,则将最小位置放在第一位。

对于传统MySQL 5。*这可能有点复杂。下面是返回针id的查询:

select min(id) as min_id
from tbl
join (
  select kw_id, max(date) max_date
  from tbl
  group by kw_id
) tbl1 on tbl1.max_date = tbl.date and tbl1.kw_id = tbl.kw_id 
group by tbl.kw_id;
结果:

+========+
| min_id |
+========+
| 2      |
+--------+
| 3      |
+--------+
现在是最后一个问题:

select * from tbl where id in (
  select min(id) as min_id
  from tbl
  join (
    select kw_id, max(date) max_date
    from tbl
    group by kw_id
  ) tbl1 on tbl1.max_date = tbl.date and tbl1.kw_id = tbl.kw_id 
  group by tbl.kw_id
);
最后的结果是:

+====+=======+============+==========+
| id | kw_id | date       | position |
+====+=======+============+==========+
| 2  | 1     | 2020-10-02 | 17       |
+----+-------+------------+----------+
| 3  | 2     | 2020-10-08 | 5        |
+----+-------+------------+----------+

这里

谢谢你的帮助。谢谢。它起作用了。
+====+=======+============+==========+
| id | kw_id | date       | position |
+====+=======+============+==========+
| 2  | 1     | 2020-10-02 | 17       |
+----+-------+------------+----------+
| 3  | 2     | 2020-10-08 | 5        |
+----+-------+------------+----------+