我需要从列中提取特定值。 我表的输出是:
select * from table where id='123456'
此表大约有30列,其中我需要检查特定列中的单词“ column 1”。列1中的数据是:
Test1=Hi;Test2=Hello;Test3=Good;Test4=Morning`
问题:我需要一个查询,该查询仅从“ Test2”列中提取特定单词,即输出应为Test2的值,即Hello
(我需要Hello只应将其打印为输出)
答案 0 :(得分:1)
我必须得到test2是一个值,所以我更改了查询的使用方式,例如
select * from table where id='123456' and col1 like 'Test2=Hello%'
答案 1 :(得分:0)
尝试一下:这将仅搜索字符串...对于我认为需要区分大小写的特定列。
var array = ['http://www.google.fr/', 'http://www.google.fr/', 'http://www.google.cn/', 'http://www.google.com/', 'http://www.google.fr/', 'http://www.google.fr/', 'http://www.google.fr/', 'http://www.google.com/', 'http://www.google.fr/', 'http://www.google.com/', 'http://www.google.cn/'],
count = array.reduce((c, s) => (c[s] = (c[s] || 0) + 1, c), Object.create(null));
console.log(count);
答案 2 :(得分:0)
您还可以使用(11g起)REGEXP_SUBSTR返回所需的匹配项
WITH test AS (SELECT 'Test1=Hi;Test2=Hello;Test3=Good;Test4=Morning' AS column_1 FROM DUAL)
SELECT REGEXP_SUBSTR(column_1, 'Test2=(.+?);', 1, 1, NULL, 1) FROM test;