问题标签 [charindex]

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 回答
639 浏览

sql-server - SQL Server 查询 - 根据 2 个不同的常用分隔符将字符串拆分为 3 个部分

我正在尝试构建一个查询,该查询可以将组合的产品描述、颜色和尺寸拆分为各自的值。我有一张桌子,里面全是产品描述、颜色和尺寸。一些产品描述包含颜色和尺寸,每个都用特定的字符串分隔。一些颜色和尺寸包含在它们自己的列中。很多时候,描述和颜色/大小列都包含颜色/大小值。结合颜色和尺寸的常见产品描述如下所示: ProductDescription..-..Color--.--Size 其中 Color 由“..-..”分隔,Size 由“--.-- 分隔” ”。有时颜色和/或大小不存在,查询没有分隔符来引用,但我仍然希望它拆分描述/颜色或描述/大小,

描述和尺寸分离得很好,但我在颜色方面遇到了问题。我收到以下错误:

任何帮助将非常感激!

这是我到目前为止不起作用的内容:

0 投票
3 回答
1626 浏览

sql-server - 在 Substring 中使用 Charindex 会导致错误

我在 SUBSTRING 中有 CHARINDEX 函数,它必须识别分隔符 (|) 值并将该值作为参数返回给子字符串

当分隔符存在时,它工作正常

其中 ID 为 SH1684

当它不存在时

这导致错误为

消息 536,级别 16,状态 1,第 1 行 传递给子字符串函数的长度参数无效。

但我的意图是在 ID 中获得价值为 SH168432I5。

我该如何规避这个问题。

0 投票
1 回答
40040 浏览

postgresql - POSTGRESQL 中的 CHARINDEX (SQL SERVER) 等价物是什么?

我正在尝试CHARINDEX使用 Postgresql。但它说:

如果 postgresql 中不存在这样的内置函数,那么是否有任何函数可以替代 charindex?
如果是,那么CHARINDEXPOSTGRESQL 中的 (SQL SERVER) 等效项是什么?

0 投票
1 回答
95 浏览

sql - 选择一个子字符串

我在这个网站上找到了这个与我的问题相关的问题和答案。

除了我的问题是我需要在“-”之后显示信息。

例如,它当前显示7 - Net 714 - Net 149101 - Net 141 - COD

我只是希望它显示“-”之后的部分。
例如,我希望它只显示Net 7orNet 14COD

如果我这样做:

select distinct right([C].[CustomerTermsCode], charindex(' - ', [C].[CustomerTermsCode]) + 4) AS RightString

它只显示“-”之前的信息。

请帮我。

0 投票
1 回答
71 浏览

sql - 使用 Charindex 查找记录

我继承了一个查询,该查询仅将一个表的 PAYMENT_DETAILS 字段与第二个表的 PAYMENT_DETAILS 字段匹配。它查看第一个 PAYMENT_DETAILS 字段中的数据是否在另一个字段中的任何位置:

我只是想找出正确的方法来做相反的事情。我只想要第一个表中 PAYMENT_DETAILS 与第二个表的 PAYMENT_DETAILS 不匹配的记录。

我尝试使用:

但这并没有返回预期的结果——我不确定这在逻辑上是否有意义。然后我使用了一个子查询:

但这也没有按预期返回任何结果。解决此问题的最佳方法是什么?谢谢!

更新:

我正在使用以下查询来识别结果,但是它们与我正在寻找的结果不一致。表 A 有交易,表 B 有“Payment_Details”。“Payment_Details”不应存在于表 C 中“payment_details”列的任何位置。

我的结果是返回一些记录,其中特定客户的 payment_details(来自表 B)在表 C 中的“payment_details”中有特定文本。我只想要表 B 中每条记录的 payment_details 不在整个表 C 中的记录,所以看起来逻辑获取的记录多于应有的记录。

我目前正在使用以下查询:

如何增强查询以不提取表 B 和表 C 之间的 payment_details 匹配的任何记录。

0 投票
1 回答
146 浏览

sql-server - 按行号过滤 SQL Server 中的特定单词

我有一个下表:

我需要下面的结果:

EMAIL:0:必要的添加,line 1必要EMAIL:1:的添加line 2....但只有电子邮件。如果找不到电子邮件,则显示一条消息not found

我尝试了以下查询:

-但是没有成功,我需要在char 中停下来,并且CHARINDEX不工作。

我正在使用 SQL Server 2008。

0 投票
1 回答
283 浏览

sql-server - SQL Server charindex() 似乎失败 - 它是否包含标点符号?

我从 MySQL 数据库转换为 SQL Server。

在一个专栏中,我正在寻找一个字符串:

“状态”:“已解决”

请注意,引号实际上是在列中。

在 MySQL 中,我有功能 ---

请注意,我正在使用反斜杠转义双引号(全部四个)。这正如预期的那样工作。

现在,我在 SQL Server 中有完全相同的数据(已验证)。

我正在执行功能:

并且

这是失败的。它带回了几行(第一行可能是实际行的 2%,第二行可能是 0%)。但后来我说简单地找到:

解决了

然后它找到所有结果。

这里发生了什么?为什么不charindex工作?列数据类型是varchar(max)——我最初是从文本数据类型转换它的(我习惯于 MySQL)——所以也许这不起作用。列的长度也可以很长——可能最多 300 或 400 个字符。任何想法都非常感谢。

0 投票
2 回答
7341 浏览

sql-server - 如何在TSQL中提取两个特殊不同字符之间的字符串

我正在使用以下问题的代码: How to extract strings between two special characters in TSQL

当前结果:

我想搜索一个列/字符串并提取从':'第一个开始到第一个的字符串'.'

我试图得到的结果是:ServerName_1

需要注意的是,服务器名称的长度会有所不同。


此外,当我尝试运行以下查询时:

我收到以下错误:

提前谢谢了。

SQL小提琴

0 投票
1 回答
774 浏览

sql - 用于解析正文以从列表中提取字符串的 SQL 查询

我需要有关 SQL 查询的帮助才能执行以下操作:

我有一个表格,其中列出了产品的可能字符串值。

我有第二个表格,其中可以提到该产品的自由格式文本。如果字符串存在于第一个表中,SQL 查询有什么方法可以提取该字符串?

我在另一篇关于 CHARINDEX 和 SUBSTRING 的 SO 帖子上读到。在这种情况下这会有效吗?我如何在我的用例中应用它?

我的场景的一个例子是:

我的表 PRODUCTS 具有以下格式,

另一个表有一列,其中有大量文本将提及该产品。喜欢:

现在我想以这种方式使用查询来提取产品名称。

提前感谢您的时间和帮助。

0 投票
1 回答
319 浏览

sql - 如何检索两个相似字符之间的值

我有以下示例数据和到目前为止我尝试过的查询 -

我想选择 ^. MESSAGE1所以在这种情况下,我的输出应该是MESSAGE2