问题标签 [group-concat]

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 投票
2 回答
2466 浏览

mysql - mysql 多子查询 group_concat 查询

我试图显示一个特定城镇的行政区和邮政编码。

我的数据库结构相当好,有一个表格,例如城镇、邮政编码和自治市镇。每个关系 town_postcode 和 town_borough 也有表格。

理想情况下,我希望数据返回为:

“艾比伍德”、“SE2”、“贝克斯利、格林威治”、“巴比肯”、“EC1、EC2”、“伦敦金融城”

我尝试了几种不同的方法,我很接近但还没有。

任何帮助将不胜感激...... :) 到目前为止我已经尝试过

哪个返回

我也试过

哪个返回

0 投票
2 回答
620 浏览

mysql - 查询返回多维分组数组

在我有几个数据库表的假设场景中,一对多的关系。我正在尝试找到一个不错的查询函数,以便我可以返回表 A 中的每一行,其中包含表 B 中所有链接行的嵌套数组。

将只返回一个结果

而这会返回我想要的,但我要的是数组而不是字符串(b.name 中可能有逗号)

我错过了什么?

0 投票
1 回答
396 浏览

mysql - 具有 2 个连接的 MySQL group_concat 返回不需要的结果

执行此查询时,我希望得到 2 个手机号码和 1 个类别,而不是我得到 2 个类别,我做错了什么?我想这与我加入事物的方式有关?

用户,可以有多个imei,categoryjoin将一个用户链接到多个类别

非常感谢您的帮助!

0 投票
1 回答
2925 浏览

doctrine - 如何在学说中进行子查询并将结果水合到对象中?

我想在教义上做一个有点复杂的查询,即一个带有 group_concat 的子查询的内部连接。

查看普通 SQL 中的查询:

1) 我怎样才能在教义中做到这一点?换句话说,我怎样才能将这个常规 sql 翻译成 dql?

2)我希望在生成的 Kinderen 对象中可以访问额外的属性(句点)。我怀疑这是教义的默认行为?

当我阅读文档和谷歌时,我找不到解决方案。

谢谢!

0 投票
1 回答
185 浏览

mysql - 连接多关系 MySQL 数据库中的高级搜索

这可能有点高级解释,因为这是我正在尝试做的一件非常复杂的事情(至少对我而言)。

我目前正在构建一个供个人在 PHP 和 MySQL 中使用的电影数据库,而 MySQL 部分正在杀死我。当前的设置是这样的:

我有一个包含名称、描述和值的主电影数据库,只有一个选项(如年份、年龄限制和媒体类型(DVD、蓝光等)。

我有额外的语言、字幕、音频格式等表格,它们都有两列。一个用于电影的 ID,另一个与索引匹配(例如语言 ID)。这些应该与主表连接在一起,并连接到一个字段中。

我的语言表示例:

最理想的是,我想要这样的东西:

可以将字幕和语言分解为 PHP 数组。这部分我实际上已经使用 GROUP_CONCAT 工作得很好,直到我需要搜索特定 subid 或 langid 的部分。这是我迄今为止一直在使用的查询。即使我还没有写出我所有的餐桌信息,我希望你能明白这一点:

我使用 group_concat_max_len 来防止我获得 BLOB,到目前为止,我只尝试了 group_concatting 我的两个连接表(稍后将添加其余的表)。

这完全返回了我想要的内容,但是每个连接表只能有一个 WHERE 子句,否则它将返回 0 行。同样,如果我只搜索一个,它只会在 GROUP_CONCAT'ted 字段中返回搜索到的数字/ID。

然后我使用 IN() 函数对其进行了修复。至少我认为我做到了。但问题是它只适用于我所说的 OR 搜索。添加:

没有在字幕表中的数字仍将返回该行,仅具有匹配的数字。这对于一半的搜索来说很好,但我也需要一种使用类似于 AND 的方法进行搜索的方法。

我不知道我是否需要完全重组,或者需要一个完全不同的查询,但我希望得到一些帮助或提示。

我也许应该说我也看过 HAVING 选项,但据我了解,它对我的​​查询无效。

顺便说一句,如果这是不可能的,我已经考虑废弃连接的表并将它们替换为在主电影表中易于搜索的字段(比如使用这个“语法”:'#2##4#',然后使用 LIKE '%#2#%' AND '%#4#%' 来匹配结果,或者作为最后的手段使用 PHP 对其进行排序(我宁愿死也不愿这样做),尽管我更喜欢它如果可以修复和使用上述解决方案)。

非常感谢您帮助我解决了头痛!

0 投票
2 回答
308 浏览

php - PHP中explode()的问题

我在 PHP 中的爆炸函数有问题。

我正在从数据库中提取一个字符串,如下所示:

将其拉入一个名为 $recordset 的对象后,我使用explode函数从中创建一个数组......如下:

但是有些方式,数组并不像我期望的那样......

这是我回显数组时得到的:

如您所见,我没有得到应有的值...但是,如果我从数据库中获取的字符串很短,请说:

上面的逻辑工作正常..

我不知道如何调试或解决这个问题..

请帮忙?

0 投票
1 回答
1332 浏览

sql - MySQL 在 FUNCTION 中返回 GROUP_CONCAT

我在 Windows Server 2008 上使用 MySQL Server 7.0,并试图在函数中返回 GROUP_CONCAT 的结果。一般SQL如下:

这会产生以下结果:

ERROR 1415 (0A000): 不允许从函数返回结果集

我检查了手册(http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html)并阅读

结果类型为 TEXT 或 BLOB,除非 group_concat_max_len 小于或等于 512,在这种情况下,结果类型为 VARCHAR 或 VARBINARY。

我在 My.ini 中将 group_concat_max_len 的值从默认值更改为 512 和 256(并重新启动了 MySQL 服务)。我已经使用验证了更改

mysql> 显示变量,如“%concat%”;

任何帮助表示赞赏!

0 投票
3 回答
5889 浏览

mysql - WHERE 子句 IN group_concat

我有以下查询:

是否可以只连接不包含''的工作字段,如果可以,怎么办?我不能做 WHERE 子句,因为我仍然需要那些没有“工作”的子句。

画出下表:

当前查询将导致:

但我希望它是:

(不要介意这张表的逻辑。这只是一个简单的例子来说明问题)

这样做的原因是,我要在php中explode() GROUP_CONCAT(job SEPARATOR ','),而在实际的表中,很容易有1000个无用的,,'s,这会使explode函数非常慢。谢谢,

勋爵。

0 投票
3 回答
55690 浏览

sql - MySQL:带有 LEFT JOIN 的 GROUP_CONCAT

我遇到了 MySQL 的“GROUP_CONCAT”函数的问题。我将使用一个简单的帮助台数据库来说明我的问题:

请注意,此帮助台数据库有两张票,每张票都有两个解决方案条目。我的目标是使用 SELECT 语句创建数据库中所有票证的列表及其对应的解决方案条目。这是我正在使用的 SELECT 语句:

上面 SELECT 语句的问题是它只返回一行:

请注意,它正在返回工单 1 的信息以及工单 1 和工单 2 的解决方案条目。

我究竟做错了什么?谢谢!

0 投票
3 回答
1311 浏览

mysql - MySQL group_concat 问题

问候,

我对group_concat函数有一个非常棘手的问题,我想了几天没有成功,如何解决它。

有3张表:

当需要检索所有任务时,将它们关联的所有标签作为结果列,以下查询没有问题:

问题是当我需要从一个 EXACT 标签中选择任务时,我仍然需要保留标签列以及所有任务的关联标签。我尝试使用以下查询,但由于结果受 WHERE tag_id = 5 的限制,因此 group_concat 函数仅检索 id = 5 的标签,例如“work”:

我想要达到的结果是:

非常感谢您提供有关如何解决此问题的任何建议!