gpt4 book ai didi

mySQL子查询看看是否

转载 作者:行者123 更新时间:2023-11-29 08:19:05 24 4
gpt4 key购买 nike

  • 每张专辑都有许多图标。
  • 如果其字段 current <> 0,则图标是当前图标。
  • 如果相册的每个图标都是最新的,则该相册就是最新的。

我需要知道:对于每张专辑,该专辑是最新的吗?

我尝试过:

 "SELECT *, ".$subquery." AS current FROM tbl_album"

哪里$subquery是:

 SELECT EXISTS( SELECT 1 FROM tbl_icon2album JOIN tbl_album ON tbl_album.id=tbl_icon2album.albumID WHERE tbl_icon2album.b_current_in_timeproof = 0)

但这不起作用。我收到消息“1064 您的 SQL 语法有错误

有趣的是,子查询独立运行时效果很好。此外,主查询工作正常,如下所示:

SELECT *, 1 AS current FROM tbl_album

那么,如果子查询有效,并且主查询有效,为什么它们不能一起工作?

后记:this question 中提出了此问题的可行解决方案。 .

最佳答案

这里不需要子查询,试试这个:

SELECT  a.albumId,
IF( SUM(IF(i.current<>1,1,0)) = 0,'Current','Not Current') as IsCurrent
FROM tbl_album a
LEFT JOIN tbl_icon2album i ON i.albumId = a.albumId
GROUP BY a.albumId

更新了查询,以根据图标当前状态的总和反射(reflect)相册是否为当前相册。

更新:将 i.current<>0 更改为 i.current<>1

关于mySQL子查询看看是否,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19938822/

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