问题标签 [mysql-error-1242]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
77198 浏览

mysql - 在 MySQL 中的子查询上使用 GROUP_CONCAT

我有一个 MySQL 查询,我想在其中包含另一个表中的 ID 列表。在网站上,人们可以添加某些项目,然后人们可以将这些项目添加到他们的收藏夹中。我基本上想获得收藏该项目的人的 ID 列表(这有点简化,但这就是归结为)。

基本上,我做这样的事情:

这样,我可以通过稍后在我的代码中将 idlist 拆分为 PHP 中的数组来显示谁最喜欢某个项目,但是我收到以下 MySQL 错误:

1242 - 子查询返回多于 1 行

我认为这是使用GROUP_CONCAT而不是,例如,CONCAT?我会以错误的方式解决这个问题吗?


好的,感谢到目前为止的答案,这似乎有效。但是,有一个问题。如果项目是由该用户添加的,则该项目也被视为收藏夹。所以我需要一个额外的检查来检查creator = userid。有人可以帮我想出一个聪明的(希望是有效的)方法来做到这一点吗?

谢谢!

编辑:我只是尝试这样做:

idlist是空的请注意,如果我使用INNER JOIN而不是LEFT JOIN我得到一个空的结果。即使我确定有满足 ON 要求的行。

0 投票
4 回答
283 浏览

mysql - 莫名其妙的内部查询

我有一个嵌套的 SQL 查询,它显示了我无法理解的结果。该查询通过 PARTNER_USER 表连接 PARTNER 和 USER 表。合作伙伴基本上是用户的集合,此查询的目的是确定第 20 个用户何时向 ID 为 34 的合作伙伴注册:

但是,如果我将最后第二行更改为

查询失败并显示错误消息“子查询返回超过 1 行”。为什么第一个查询有效,而第二个查询无效?他们看起来和我一样。

谢谢,唐

0 投票
6 回答
10604 浏览

mysql - 在 MySQL 中使用子查询进行选择(带有 ANY 和 IN 的子查询)

感谢您的精彩回答!

了解更多信息


这很难解释,所以让我们设置舞台......

我想选择组 a 的操作。我的想法是

但显然这个子查询返回不止一行。我应该使用 JOIN 吗?

0 投票
2 回答
3862 浏览

mysql - Mysql::Error:子查询返回多于 1 行:

在我的 rails 应用程序中,我正在使用 find_by_sql() 运行 sql 查询,因为我需要子查询。如果我执行第一个或第二个查询,但是当我将它们与 AND 一起添加时,它会开始抱怨子查询中有超过 1 行。

我希望返回与条件匹配的所有行(记录)。这里需要修复/更改什么?什么告诉 mysql 我只想要 1 行?

这是在 rails 日志中查看的结果 SQL:

0 投票
4 回答
1721 浏览

mysql - 为什么 MySql 会出现“子查询返回超过 1 行”错误?

嗨,伙计,我正在从我的表格中选择我的活动记录,我的所有其他记录都很好,但是活动记录给了我错误我的代码是

@query = Estate.find_by_sql"SELECT (e.name) as estate_name, g.name asGovernance_body,"+ "(select count( ) from stand s where s.estate_id = e.id AND #{filter_estates}) as total_stands, "+ "(select e.active from states e where e.active = true AND #{filter_estates}) as Estate_status, "+ "(select count( ) from services sp where sp.estate_id = e.id AND #{filter_estates} ) as service_providers,"+ "(select count(*) from approved_vendors av where av.estate_id = e.id AND #{filter_estates})as vendor"+ " FROM states e LEFT JOINGoverning_bodies g on e.governing_body_id = g.id和 #{filter_states} "

我得到一个错误。

(Mysql::Error: Subquery return more than 1 row: SELECT (e.name) as estate_name, g.name asGovernance_body,(select count( ) from stand s where s.estate_id = e.id AND e.id IS NOT NULL)作为total_stands,(从estates e中选择e.active,其中e.active = true AND e.id IS NOT NULL)作为estate_status,(从服务sp中选择count(),其中sp.estate_id = e.id AND e.id不为空)作为service_providers,(从approved_vendors av 中选择计数(*),其中av.estate_id = e.id AND e.id 不为空)作为来自庄园的供应商e LEFT JOINGovernance_bodies g on e.governing_body_id = g.id AND e.id 不为空):

我想显示所有活跃和不活跃的庄园。

请问各位,我该如何解决这个问题。我正在使用 Mysql 数据库。

0 投票
1 回答
1085 浏览

mysql - Mysql Multiple Concat Inner Join,只给一个Name

我有三张桌子。

它给了我这个错误:子查询返回超过 1 行

但我需要的是所有 'BeziehKuBez' 逗号分隔在一列中。
例如。Beziehname1, Beziehname2, ...

如果有测试它,CONCAT_WS(',', BeziehKuBez)。但是给我同样的一个。我可以用一个while循环来做到这一点吗?但我不知道怎么做?!

更新: 关于格雷格的回答

GROUP_CONCAT()给他与 相同的输出concat()

每个“Anlass”只有一个名字。但我需要,多个名称用逗号分隔一个“Anlass”。

表结构:

表分析:

AnlID, anlass_name

表 Stammdaten_beziehungen

BeziehID, Beziehkubez

表参数_zuweisung_anl

ZuwAnlID, ZuwAnlAnlNr, ZuwAnlBeziehID

INFO ZuwAnlAnlNr 链接到 Anlass.AnlID ZuwAnlBeziehID 链接到 Beziehung.BeziehID

这是我的查询:

0 投票
3 回答
11535 浏览

php - MySQL 基准测试

我正在尝试使用 MySQL 基准测试一些查询。但是,我遇到了一个错误。

作为回报,我得到了这个错误;

有谁知道如何对查询进行基准测试?

谢谢

0 投票
3 回答
1172 浏览

mysql - 帮助子查询!返回超过 1 行

我不明白返回多行的问题:

这是我的桌子 BBC:

问题:

列出包含“印度”、“伊朗”的地区的国家名称和地区。

这是我的声明:

它返回:

我的陈述有什么问题?答案应该是 select 语句中的 select 语句的形式

谢谢你!

0 投票
3 回答
1083 浏览

php - WHERE id IN 在 UPDATE 中不起作用

UPDATE statistics'
SET money = money + '$money'
WHERE member_id IN
((SELECT member_id FROM races WHERE l_id = '$mem_id'), $other_id)

那有什么问题?我想从比赛中检索所有 member_ids,还包括 member_id $other_id。没有 $other_id 它可以工作。

顺便说一句,它给了我“子查询返回超过 1 行”错误。

0 投票
2 回答
85 浏览

mysql - MySQL不同版本其他结果

嘿,我在 windows 5.1.39-community 和 linux 5.1.39-log 上有 2 个版本的 mysql,我执行一个查询:

在 Windows 上它可以正常工作,但在 linux 上它说:

有没有办法让它在没有任何 mysql 更新/降级的情况下在 linux 上运行?