问题标签 [concat-ws]

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 投票
1 回答
40 浏览

mysql - 在 mySQL 中连接两个连接的结果

我有这个 mySQL 查询:

其中结果是这 3 列与=>分隔符的组合。

桌子

是否可以在同一个查询中将第一个连接的结果与任何其他列连接起来?

例如:

最终结果another_column_union应该是这样的:

0 投票
1 回答
165 浏览

php - 错误:狮身人面像查询中的未知键名“CONCAT_WS”

我是 sphinx 和 mysql 的新手,并尝试执行简单的查询,如下所示

但是我在索引命令上遇到错误 CONCAT_WS

错误:/etc/sphinxsearch/sphinx.conf 第 12 列第 26 行中的未知键名“CONCAT_WS”。致命:无法解析配置文件“/etc/sphinxsearch/sphinx.conf”

0 投票
0 回答
22 浏览

mysql - 带有条件内部 concat 的 concat

我从带有NameNotes字段的表中选择 concat。我将笔记放在左括号和右括号中。在Notes字段为 NULL 的情况下,我不想要任何()第一个 Select :

Select concat(Name,(concat(' (',Notes,')'))) from Table

这给了我:

  • 名称1(备注1)
  • 名称2 ()

我试过了concat_ws

Select concat(Name,(concat_ws('(',Notes,')'))) from Table

但这给了我

  • 姓名1备注1()
  • 名称2)

而且ifnull根本没有用。

我宁愿不这样做,Case/Then因为我有很多表正在concatenating使用left join,它会使已经很复杂的查询变得笨拙。

0 投票
2 回答
57 浏览

mysql - 使用 Group_Concat 进行多个表连接,其中某些记录并不存在于所有表中

我正在尝试执行一个相当复杂的(对我而言)查询,该查询将从主表中获取描述字段,然后将其附加到相关查找表中的标题和值。并非所有记录在查找表中都有记录。我将提出进一步的问题作为后续问题,但要开始我的问题是,只有那些在所有表中具有值的记录才会显示。

http://sqlfiddle.com/#!9/09047/13

  • (无效的)
  • 这是记录 2 文本

    颜色
    红色

    水果
    苹果
  • (无效的)

如果我使用 Concat_WS 我会得到所有记录,但 concat 中的“标签”会消失:

http://sqlfiddle.com/#!9/09047/16

  • 这是记录 1 文本

    蓝色
  • 这是记录 2 文本


    苹果
  • 这是记录 3 文本


    葡萄

所以我的第一步是获取所有记录描述,无论它们存在多少个查找表,并显示名称/标签。

0 投票
2 回答
256 浏览

java - 休眠 concat_ws 和空字段

我在休眠查询中使用 CONCAT_WS 来创建一个巨大的字符串并使用like '%value%'. 它工作正常,但对于某些记录,某些字段为空。例如,如果actId为空,我的整个 concat_ws 返回空。我不知道为什么, concat_ws 必须忽略空值。可能是因为hibernate试图从null调用getActNumber?无论如何,我正在努力解决这个问题。

谢谢!

0 投票
3 回答
185 浏览

mysql - MySQL 查询:如何使用 CONCAT_WS 和 COALESCE 正确识别逗号分隔的结果值并将其重新转换为原始概念

有很多关于在 MySQL 数据库表中以逗号分隔的方式保存基于字符串的结果的讨论。我不想在这里用我自己的哲学评论来扩展这一点,我只想首先说这个问题对我来说是众所周知的,但现在不是正确的话题。

题目是我有这样的情况要评价。数据保存为基于字符串的密码。这些密码中的每一个都表示进行了特定类型的手术后的医疗并发症。

例子:

MySQL 数据库表“并发症”包含一个名为“手术修订指示”(VARCHAR[50]) 的字段,其中保存了诸如“3、7、9、16”之类的数据条目,因为从多选菜单中可以看到这 4 个不同的指示由用户选择。

现在我想做以下事情:

我知道“3”、“7”、“9”和“16”代表什么。我想使用 MySQL SELECT 查询将这些密码重新显示为它们的原始概念(例如“体重恢复”、“减肥失败”等),例如:

您现在可能会问“为什么这个人如此间接?” 或“他为什么不使用 PHP 来做这件事?”。我使用 PHP,但在不同的上下文中。在这里,我需要使用 SQL 查询进行直接评估,因为在这段代码中,不是我的所有数据都被提取以在 Excel CSV 文件中自动创建结果集以进行二次处理 - 我不想重新发明轮子.

现在,上述查询并没有做我想做的事。在我的示例中,我想从这个“3、7、9、16”字符串中显示“体重恢复、反流、营养不良、胆总管结石 nach Magen-Bypass”。

我知道 ... LIKE "%3%" ... 在这里不起作用。

有一些使用“FIND_IN_SET('3', op.OP2RevisionIndikation)”的建议,但这里我们不是直接在主 SELECT 语句中,而是在带有 COALESCE 和 CONCAT_WS 的 CASE WHEN THEN ELSE END 过程中。

你们中是否有人知道如何通过将字符串“3、7、9、16”映射到原始值并让 MySQL 以这种方式显示它来正确评估该字符串?

我希望我已经足够透彻并且可以充分理解。

最好的问候,并无限感谢您的帮助

马库斯

0 投票
1 回答
156 浏览

mysql - 带有自定义函数结果的 mysql concat_ws 阻止了像 '%str%' 这样的工作

所以我有以下有效的sql:

这可以很好地返回任何列中包含搜索字符串的任何记录,例如“ContinentalContiCrossContact® LX21549340225/65R17”。

但后来我也希望能够只匹配大小中的数值,所以我添加了我在这里缠绕的自定义函数: 如何在 mysql 中仅从字符串中获取数字?

现在我有了这个功能,我还想连接结果数字并将其用于搜索。

所以我size在 congat 中添加了 ExtractNumber()

当涉及该功能时,类似搜索无法找到任何匹配项。但是,如果我将 havving 更改为检查特定品牌名称的 where 条件...

然后我可以看到,确实带有内部函数的 concat 确实可以返回“2147483647ContinentalVancoFourSeason 20473361205/7 ....”,但是在这个结果字符串上执行类似的操作并不匹配。

有些列有特殊字符,我尝试将函数结果转换为 utf8,但没有效果。

任何想法为什么我不能在这个 concat 字符串上做一个喜欢?

更新:它现在可以工作了。我不得不将转换放在迭代器函数本身中。

由于某种原因,使用内部函数进行转换或强制转换会产生正确的结果,但之后仍然不允许类似的比较匹配。

所以现在下面的查询

产生了预期的结果,但是现在出现了一个非常奇怪的新问题..

如果我执行完全相同的查询,但按 ASC 而不是 DESC 排序,那么我得到 0 个结果。

真的很奇怪,订单会影响天气,任何结果都会返回。如果删除了提取编号函数,则以任何一种方式排序都会返回结果。

当我把函数放回去时,我只能在按 desc 排序时得到结果。

谁能告诉我为什么会发生这种奇怪的行为?

0 投票
2 回答
1814 浏览

postgresql - Create an immutable clone of concat_ws

This blog post shows an example of how to create a immutable_concat function in Pg:

I'd like to do the same with concat_ws and the corresponding text_concat_ws does exist, however, the following just crashes the process:

Update: The siguature of immutable_concat_ws should be (glue, *parts), one glue (text or varchar) and one or more parts (text, varchar or null).

What am I missing here?

0 投票
1 回答
77 浏览

mysql - 如何将另一个表的 2 列连接到 1 个表?

我正在建立一个新数据库,我需要将concatenate另一个表中的 2 列添加到 1 列。

我已经试过了HeidiSQL。我的代码有错误吗?

这是错误消息:

字段列表中的“未知列 'importfile.Collection_Date'”。

我 100% 确定字段列表确实存在。

0 投票
1 回答
355 浏览

mysql - 如何在MYSQL中有空值的地方进行GROUP_CONCAT?

我有一个长查询,它返回一个主键的多个值(来自左连接)。例如:(仅显示两个字段,但大约有 10 个字段)

当我使用 GROUP_CONACT 时,它返回如下:

但我真正想要的是:

我尝试使用

它返回:

它不返回 LotID=2,也不返回额外的逗号。

我怎样才能获得干净的记录?