实施例,
假设我有三列中的列值,如列1中那样,
10,9,2,3
12,9,8,9
16,2,9,2
我需要根据column1值获取记录,第二个位置值为9。
结果我期待如下,
10,9,2,3
12,9,8,9
由于 Rajasekar R
答案 0 :(得分:0)
您可以针对您的案例尝试以上示例(SQL):
DECLARE @tempTable TABLE(Value NVARCHAR(100))
INSERT INTO @tempTable VALUES('10,9,2,3');
INSERT INTO @tempTable VALUES('12,9,8,9');
INSERT INTO @tempTable VALUES('16,2,9,2');
SELECT *
FROM @tempTable
WHERE SUBSTRING(Value,CHARINDEX(',', Value)+1,1) = '9'
答案 1 :(得分:0)
试用正则表达式
select * from a where a1 ~ '^\d+[,][9][,]';
或
select * from a where a1 ~ '^\d+,9,';
两者都完美无缺地工作
输入
ABC
DEF
HIJ
1,9,2,3
5,9,4,6
1,2,3,9
2,3,3,9
5,99,4,6
10,9,2,3
12,9,8,9
16,2,9,2
162,9,2
<强> 输出 强>
1,9,2,3
5,9,4,6
10,9,2,3
12,9,8,9
162,9,2
我有Postgres所以我使用了~
,对于其他人你可以使用相应的正则表达式命令