sql - 从sql server中的charindex函数获取第二次出现

标签 sql sql-server

我需要为下面的文本获取第二次出现的空间。它应该是 56 之后的空间,但我在 56 之前获得第 15 位作为第一个。

select charindex(' ', 'Posted/edited: 56 days ago', 2)

最佳答案

您需要设置START_LOCATIONCHARINDEX .意思是在什么字符后面charindex应该可以找到。在我们的例子中,我们需要在 56 之后找到.所以代码应该是这样的:

select CHARINDEX(' ', 'Posted/edited: 56 days ago', 
    CHARINDEX('56', 'Posted/edited: 56 days ago', 0));

输出:
18

关于sql - 从sql server中的charindex函数获取第二次出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55611930/

相关文章:

sql - 在 Hive 中将单行列拆分为多列

mysql - 在 SQL 中使用 CASE THEN

sql-server - SSIS-脚本组件-根据结果更改图标

sql-server - 如何在 SQL 2000 中对 NTEXT 查询的结果使用 sp_xml_preparedocument?

mysql - 在触发器中打印消息

sql - 让 AVG() 忽略 0?

sql - 行集中、周期日期

.net - 令人惊讶的性能差异 : List. Contains、SortedList.ContainsKey、DataRowCollection.Contains、Data Table.Select、DataTable.FindBy

sql-server - 如何将对生产数据库所做的架构更改合并到我的迁移管理流程中?

sql-server - 生成最近 7 天的 SQL Server CPU 使用率