问题标签 [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 回答
1783 浏览

sql-server-2008-r2 - 在 T-SQL“模式”表达式字符类中转义 ] 和 ^ 字符

我正在尝试RTRIM(expression, characters)使用以下查询在 MsSql Server 2008 R2 中模拟 Oracle:

问题是我希望能够修剪可能需要转义]的字符。^

我不知道该怎么做。诸如此类的\]事情不起作用。

我知道这个ESCAPE子句,但我不明白它是如何工作的,顺便说一下,如果把它放在模式字符串之后,SqlServer 会拒绝它。

有趣的事实:

如果我写%[^^]%(希望修剪^)它不起作用。

如果我写%[^ ^]%它会修剪^,但显然也修剪空格!

0 投票
3 回答
13897 浏览

sql - SQL Server 2008 R2 中的 Patindex

我正在尝试使用PATINDEXSQL Server 2008 R2 中的函数从字符串中提取值 3

但我似乎犯了一个错误。

我试过

它返回位置24但我想要值3

有人可以协助解决吗?

0 投票
1 回答
1003 浏览

sql-server - 使用 patindex 在 select 语句中将 varchar 转换为 int

我的查询是将 varchar 转换为字符串,

在下面的查询中,我有一个错误“关键字'AS'附近的语法不正确。”

我想将字符串转换为整数。

有什么帮助吗?

0 投票
2 回答
1847 浏览

sql-server - 将值添加到sql server中的单个列中

在我的表中,我有经验字段,例如

经验

  • 5年0个月

  • 2年0个月

在这里,我想转换为秒,然后将年份和月份添加到单个列中。

经验 - [一些价值]

所以我创建了一个如下查询,

从上面的代码我得到的结果是,

经验

预期结果

如何在我的查询中做到这一点?有人帮我吗?

0 投票
2 回答
25551 浏览

sql - SQL Server T-SQL 中的 REGEXP_LIKE 转换

我在需要转换为 SQL Server 的旧报告中遇到了这一行。

ExamCodes 是源代码,learner_code 是模式。我知道 SQL Server 没有 REGEXP_LIKE 并且大多数地方都告诉您使用 PATINDEX。

这是我认为这会起作用:

但我得到了错误:

在 MSDN 上,语法被指定为,

但是 learner_code 是一个字段,我不能指定一个模式?

我一开始并没有写这份报告,所以我对它正在寻找的模式感到困惑。

非常感谢

0 投票
4 回答
47 浏览

symbols - '!' 的目的是什么?发表声明

我正在审查不同编码人员编写的脚本,并看到许多声明,例如:

我想知道'!正在用于。

0 投票
1 回答
979 浏览

entity-framework-5 - 实体框架使用 PatIndex 生成的查询不起作用

我有一个由 EF5 代码生成的查询,我在其中使用 SqlFunctions.PatIndex 并且查询需要 5 分钟才能运行。如果我对 SQL 进行更改以使用 like 运算符,那么它会在亚秒内工作。从我读过的内容来看,PatIndex 应该至少与 like 运算符一样工作。这似乎是与 row_number() OVER 部分的一些交互,因为如果您只使用 patindex 子句执行最里面的选择,它也会在亚秒时间内返回。谁能告诉我为什么 row_number() OVER 正在杀死 PATINDEX 查询而不是使用 like 的查询?

这个有效:

这个没有:

下面是两张表:

查询中使用的视图只是从基础表中选择 *。

like 算子的执行计划:

https://docs.google.com/file/d/0B4uS27e7ZMfCOTl5LS1UaHBSOTQ/edit?usp=sharing

Patindex 计划: https ://docs.google.com/file/d/0B4uS27e7ZMfCVTljNml4R0xjT28/edit?usp=sharing

0 投票
1 回答
1165 浏览

sql - SQL Server PATINDEX 以匹配确切的字符串

在表XXXX 中有列,如XY, AB, ABC, XYZ。现在我只想排除XYZandABC列并保留ABandXY列使用PATINDEX. 我不能这样做,因为只有第一列被排除在外。如果我从中删除开头%PATINDEX则两个XYZaXY都将被删除。我该如何解决这个问题。

0 投票
3 回答
33156 浏览

sql-server - SQL Server 在列中搜索文本

我对使用什么感到困惑?

基本上我需要有一个搜索字符串,它可以在单个列中搜索多个短语的出现,每个输入短语用空格分隔。

所以来自用户的输入就像:

我需要用逻辑搜索:

..等等...所以所有的短语都需要被找到。

总是逻辑 AND

SO速度,考虑到性能,我是否使用:

很多

或使用

或使用

添加全文搜索索引,

使用:

或者

???

几乎太多的选择,这就是为什么我要问,这样做最有效的方法是什么......

你的智慧值得赞赏...

0 投票
2 回答
7445 浏览

sql-server - 像 InStr 函数一样使用 PatIndex 和 CharIndex

我尝试使用Instr这个,但没有用,所以我发现应该是等效的 using PatIndexCharIndex但是,当我运行这个时我遇到了一个问题:

这返回0


这返回0


这返回0


这返回0


我怎样才能让它像这样工作InStr

如果我的计算是正确的,它应该返回25而不是0,有谁知道为什么不是?