问题标签 [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.
php - 错误:狮身人面像查询中的未知键名“CONCAT_WS”
我是 sphinx 和 mysql 的新手,并尝试执行简单的查询,如下所示
但是我在索引命令上遇到错误 CONCAT_WS
错误:/etc/sphinxsearch/sphinx.conf 第 12 列第 26 行中的未知键名“CONCAT_WS”。致命:无法解析配置文件“/etc/sphinxsearch/sphinx.conf”
mysql - 带有条件内部 concat 的 concat
我从带有Name
和Notes
字段的表中选择 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
,它会使已经很复杂的查询变得笨拙。
mysql - 使用 Group_Concat 进行多个表连接,其中某些记录并不存在于所有表中
我正在尝试执行一个相当复杂的(对我而言)查询,该查询将从主表中获取描述字段,然后将其附加到相关查找表中的标题和值。并非所有记录在查找表中都有记录。我将提出进一步的问题作为后续问题,但要开始我的问题是,只有那些在所有表中具有值的记录才会显示。
http://sqlfiddle.com/#!9/09047/13
- (无效的)
- 这是记录 2 文本
颜色:
红色
水果:
苹果 - (无效的)
如果我使用 Concat_WS 我会得到所有记录,但 concat 中的“标签”会消失:
http://sqlfiddle.com/#!9/09047/16
- 这是记录 1 文本
蓝色 - 这是记录 2 文本
红
苹果 - 这是记录 3 文本
葡萄
所以我的第一步是获取所有记录描述,无论它们存在多少个查找表,并显示名称/标签。
java - 休眠 concat_ws 和空字段
我在休眠查询中使用 CONCAT_WS 来创建一个巨大的字符串并使用like '%value%'
. 它工作正常,但对于某些记录,某些字段为空。例如,如果actId
为空,我的整个 concat_ws 返回空。我不知道为什么, concat_ws 必须忽略空值。可能是因为hibernate试图从null调用getActNumber?无论如何,我正在努力解决这个问题。
谢谢!
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 以这种方式显示它来正确评估该字符串?
我希望我已经足够透彻并且可以充分理解。
最好的问候,并无限感谢您的帮助
马库斯
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 排序时得到结果。
谁能告诉我为什么会发生这种奇怪的行为?
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?
mysql - 如何将另一个表的 2 列连接到 1 个表?
我正在建立一个新数据库,我需要将concatenate
另一个表中的 2 列添加到 1 列。
我已经试过了HeidiSQL
。我的代码有错误吗?
这是错误消息:
字段列表中的“未知列 'importfile.Collection_Date'”。
我 100% 确定字段列表确实存在。
mysql - 如何在MYSQL中有空值的地方进行GROUP_CONCAT?
我有一个长查询,它返回一个主键的多个值(来自左连接)。例如:(仅显示两个字段,但大约有 10 个字段)
当我使用 GROUP_CONACT 时,它返回如下:
但我真正想要的是:
我尝试使用
它返回:
它不返回 LotID=2,也不返回额外的逗号。
我怎样才能获得干净的记录?