gpt4 book ai didi

mysql - 如何通过在 SQL 查询中比较两个项目名称及其日期来选择数据

转载 作者:行者123 更新时间:2023-11-29 10:02:06 26 4
gpt4 key购买 nike

因此,仅当日期比具有相同用户 ID 的“不喜欢”项目更新时,我才尝试从表中获取“喜欢”项目。有时可能只是一个“喜欢”,那么也应该始终选择它。

这是我迄今为止有效的方法:

$query = "
SELECT *
FROM useractions
WHERE userid = '$userID'
AND (action= 'Like' OR action='Dislike')
";

我从同一个用户 ID 中获得了所有喜欢/不喜欢的内容。现在我只需要将它与“日期”进行比较,看看“喜欢”是否是比“不喜欢”更新的日期,如果是,则选择它并查看喜欢/不喜欢是否在同一对象上工作。

所以我写的内容(没有明显的工作效果)是我的查询的附加AND

AND (action='Like' date > action='Dislike' date)" 

(日期是我的表格中带有日期的另一个项目)。

这当然行不通。我需要如何调整它才能使其成为有效的 SQL 查询?

最佳答案

您可以在两个子查询之间使用联接

    select t1.* from  
(
select *
FROM useractions
WHERE userid = '$userID'
AND action= 'Like'
) t1
inner join (
select *
FROM useractions
WHERE userid = '$userID'
AND action='Dislike'
) t2 ON t1.userid = t2.userid and t1.date > t2.date
where t1.userid = '$userID'

无论如何你不应该在sql中使用php var ..看看你的php mysql驱动程序以准备语句和绑定(bind)参数

关于mysql - 如何通过在 SQL 查询中比较两个项目名称及其日期来选择数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52706572/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com