我试图从数据库中获取以引号开头且不以引号结尾的行。在“名称”列中有以下行,
"TEXT
"TEXT"
"TEST
"TEST"
选择查询所需的输出,
"TEXT
"TEST
SQL查询
SELECT * FROM db.supplier where regexp_instr(Name_ ,'^[\"][\w-_.]+(?<!")') = 1;
我知道正则表达式应该以$结尾以标记结尾,但是它也没有用。任何建议深表感谢。
答案 0 :(得分:1)
如何使用like
?
where Name_ like '"%' and Name_ not like '%"'
这似乎很简单。您还可以使用regexp_similar()
:
where regexp_similar(Name_, '^".*[^"]$')
答案 1 :(得分:1)
您为什么要在后面使用负数?这将返回所有开头但不以双引号结尾的值:
where regexp_similar(Name_ ,'".+[^"]') = 1