【发布时间】:2013-10-07 23:02:37
【问题描述】:
我需要在“URL”列上将 2 个表连接在一起,但是由于我们后端的一些疯狂问题,两个表中的 URL 记录不一致(斜杠/无斜杠):http://google.com/ vs .http://google.com.
在我运行查询加入后,我得到:
URL DATE
http://facebook.com 20130914
http://google.com/ NULL
http://youtube.com/ NULL
我是 SQL 的初学者,但是 SQL 是否有类似运行查询后,如果列中的项目为空,然后再次运行查询?
我发现How to ignore trailing slash while joining two string columns in SQL 然后我可以修改第二个查询以删除尾部斜杠(如果存在)。
【问题讨论】:
-
您的查询是什么样的?为什么不使用 rtrim(col,'/') 加入?效率不高,但可能比查询两次更有效。
-
@BarbaraLaird:原因是因为我只想在第一遍返回 null 的情况下进行 rtrim
-
SELECT DISTINCT b.url AS url, a.date AS date FROM url_results a LEFT OUTER JOIN url_samples b ON b.url = a.url;
标签: sql