gpt4 book ai didi

PHP/MySQL 子查询返回多于 1 行

转载 作者:太空宇宙 更新时间:2023-11-03 10:59:44 25 4
gpt4 key购买 nike

这可能已被问到,但由于我是一个庞大的 PHP/MySQL 菜鸟,我真的不知道我在寻找什么。我正在执行以下查询:

SELECT shortlink_analytics.shortlink AS short, 
COUNT(shortlink_analytics.shortlink) AS shortcount,
(SELECT link FROM shortlinks WHERE shortlinks.shortlink = shortlink_analytics.shortlink) AS shLink
FROM shortlink_analytics JOIN shortlinks ON shortlink_analytics.shortlink = shortlinks.shortlink
GROUP BY shortlink_analytics.shortlink
ORDER BY COUNT(shortlink_analytics.shortlink) DESC LIMIT 10

这曾经有效,但在上周重新访问它后,我注意到输出没有有效,而是显示了以下错误:

Subquery returns more than 1 row

在研究了代码之后,我发现问题出在(我认为!)以下方面(但我不太确定):

GROUP BY shortlink_analytics.shortlink 
ORDER BY COUNT(shortlink_analytics.shortlink) DESC LIMIT 10

谁能解释一下:

  • 我哪里做错了?
  • 关于为什么它工作一个月然后停止工作的可能原因?
  • 解决我的问题的方法是什么?

最佳答案

这部分是子查询:

(SELECT link FROM shortlinks WHERE shortlinks.shortlink = shortlink_analytics.shortlink)

你能简单地LIMIT它到 1 行吗?

(SELECT link FROM shortlinks WHERE shortlinks.shortlink = shortlink_analytics.shortlink LIMIT 1)

您应该尝试找出您的数据返回多行的原因,您甚至可能需要ORDER BY 以确保返回正确的行。

关于PHP/MySQL 子查询返回多于 1 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16837319/

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