Sql 这些问题是相同的吗?如果没有,如何进行更简单的查询
初学者在这里提问,这两个问题是相同的吗?出于某种原因,它们给出了不同的行数 =>第2154行的计数Sql 这些问题是相同的吗?如果没有,如何进行更简单的查询,sql,regex,postgresql,Sql,Regex,Postgresql,初学者在这里提问,这两个问题是相同的吗?出于某种原因,它们给出了不同的行数 =>第2154行的计数 SELECT * FROM kliendi_aadress WHERE maakond ~'\s\s' OR linn ~'\s\s' OR asula ~'\s\s' OR tanav ~'\s\s' OR maja ~'\s\s' OR korter ~'\s\s' OR postikood ~'\s\s' =>行数~1923 SELECT
SELECT *
FROM kliendi_aadress
WHERE maakond ~'\s\s'
OR linn ~'\s\s'
OR asula ~'\s\s'
OR tanav ~'\s\s'
OR maja ~'\s\s'
OR korter ~'\s\s'
OR postikood ~'\s\s'
=>行数~1923
SELECT *
FROM kliendi_aadress
WHERE maakond || linn || asula || tanav || maja || korter || postikood ~'\s\s'
如果不是,如何使第一个查询更简单、更快?查询可能会返回不同的结果,因为简单的列串联可能会添加额外的两个空格子字符串。您可以尝试使用分隔符进行连接:
SELECT *
FROM kliendi_aadress
WHERE concat_ws(',', maakond, linn, asula, tanav, maja, korter, postikood) ~ '\s\s'
它会返回一些不同的结果,因为在下一个查询中,您已经编写了两次“Tanav”?非常感谢!与第一个查询的结果相同。抱歉,编辑时输入错误。正确的一个就像在顶部一样。