问题标签 [patindex]

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

sql - 如何获取整列的righttrim值

在此处输入图像描述

如何在以下条件下从Offset Group列和列中获取值?HedgeId

  1. SecurityGroupId获取的值应包含列中提到的字符串
  2. Offset Groupcolumn 和HedgeIdColumn 获取的值应该只包含剩余的字符串,该字符串位于SecurityGroupId.
0 投票
0 回答
389 浏览

postgresql - PostgreSQL 中的 SQL Server 函数 PATINDEX?

在 SQL Server 中,我执行:

它是正确的。我在 PostgreSQL 中需要相同的功能。我找到了这个功能:

但它使用相同的参数无法正常工作:

什么是不正确的?我能解决什么问题?

0 投票
1 回答
306 浏览

tsql - 查找破折号“-”时的 PATINDEX 错误结果

这个简单的例子显示了我遇到的问题,但我不明白为什么......

我正在测试传递给我的字符串参数中第一个字符的位置,该字符是小写或大写字母、单个破折号或句点。

这两个模式匹配似乎检查了同样的事情,但你自己运行这段代码,它会打印一个 0,然后是一个 3:

我不明白为什么只有当破折号字符是我们检查的第一个字符时它才有效。

这是一个错误吗?或者按设计工作,但我错过了一些东西......我正在使用 SQL Server 2016,但我认为这并不重要。

0 投票
2 回答
367 浏览

tsql - 使用 patindex 替换字符

我有一个表,其中包含一个名称列,其中包含如下名称:

A & A 草坪
C & D 铁路
D & B 铁路

我有以下查询可以让我得到我想要的正确列
select name from table where patindex('_ & _ %', name) > 0

我需要完成的是使具有这种模式的任何东西都折叠起来。喜欢这个

A&A Turf
C&D 铁路
D&B 铁路

我也在研究如何使用单个字母后跟一个空格,然后是另一个单个字母,然后是一个空格,然后是一个以上的单词,例如

A F Consulting -> AF Consulting
DB Catering -> DB Consulting

但是仅当单个字母的东西位于值的开头时。
例如,如果名称在名称中的任何位置具有上述模式,那么除非它在开头,否则不要做任何事情

ALBERS, JK -> ALBERS, JK
这不会改变,因为它是一个名字而且它不是在开头。

因此,这样的结果将是理想的结果:

0 投票
2 回答
395 浏览

sql-server - ] 符号的 mssql patindex

如何在字符类(MS SQL SERVER PATINDEX 函数)中指定 ] 符号?

0 投票
0 回答
456 浏览

string - 查找 Patindex 匹配的结束字符索引

我有一个 PATINDEX 函数,如下所示,它返回我想要的字符串的起始索引,但考虑到通配符,我将有一个未知的字符串结尾,这将是字符串操作所必需的。我想知道是否可以找到 patindex 返回的字符串的结尾?

0 投票
3 回答
2334 浏览

sql-server - 至少一个字母和一个数字的七个字符的 T-SQL PATINDEX 模式

我想在任意长度的文本中识别一个由七个字符组成的块:

  • 以一封信开头
  • 包括至少一个数字(任何地方)
  • 所有字母都是大写的

我将如何用 表示这种类型的模式PATINDEX()PATINDEX('%[A-Z]%',text)满足第一个要求,但不满足另一个要求。我将如何制作这个变量,以便七个字符空间内的数字和字母可以以任何方式混乱(在第一个字符之后)?

我用它来打印出块:SUBSTRING(MESSAGE_SUBJECT,PATINDEX('%[A-Z]%',MESSAGE_SUBJECT),7)

如果没有 CLR,这似乎是不可能的。为了更简单,是否有可能找到以字母开头并包含一个数字的七个字符分组?

0 投票
1 回答
50 浏览

sql - T-SQL 通配符搜索 - 命名空间值

我需要在具有“ns [0-9]:”的字符串中满足一个条件,其中 [0-9] 可以是任何大于 10 的数字。

例子:

这仅适用于 1 到 9,不适用于 10 及以上。我可以使用 [0-9][0-9] 但它只适用于 10 及以上。我也不想要数字和冒号之间的通配符。

我只希望以下格式返回带有 patindex 的 1

ns1:、ns2:、ns10:、ns11: 等。

我还需要一个非功能解决方案。出于性能原因,我想使用类似字符串的功能

谢谢

0 投票
4 回答
101 浏览

sql - 从字符串中找出数字部分并将其存储为十进制数据类型

我尝试使用 patindex 来查找字符串中数字值的开头。我的目标是只从字符串中提取数字部分,不包括 %。

使用以下查询,这是我的结果:

选择 Column_Desc, Replace(substring([Column_Desc], PatIndex('%[0-9]%', [Column_Desc]), len([Column_Desc])),'%','') 作为 New_Value

Column_Desc

  1. 我的税率是 18.8% **。
  2. 13.8%是我的税率。
  3. 我的税率 15.9% 你的呢?

新值

  1. 18.8
  2. 13.8是我的税率。
  3. 15.9 你的是什么?

因此,结果(New_Value)应该是 18.8、13.8 和 15.9,数据类型为十进制。我无法让它工作。请指教。谢谢!

0 投票
2 回答
331 浏览

sql-server - where 子句中的最佳搜索字符串

想要在WHERE子句内使用 PATINDEX 和 SOUNDEX 或任何最佳方式搜索字符串。

我有下表包含一些示例数据,可以使用PATINDEX和搜索给定的字符串SOUNDEX

注意:我有100 Millions表中的记录要搜索。

要搜索的字符串:- 'Smith A Steve'

获取输出:

预期输出:

试过:

1

2

3

4