MySQL修剪(concat…)
这个查询有什么问题MySQL修剪(concat…),mysql,sql,select,subquery,notin,Mysql,Sql,Select,Subquery,Notin,这个查询有什么问题 SELECT DISTINCT source, source_description, url FROM staging_census WHERE Trim(Concat(source, source_description, url)) NOT IN (SELECT Trim(Concat(source, source_description, url))
SELECT DISTINCT source,
source_description,
url
FROM staging_census
WHERE Trim(Concat(source, source_description, url)) NOT IN (SELECT
Trim(Concat(source,
source_description, url))
FROM dim_source);
目标是只提取源、源描述和URL组合不存在的记录(在我的例子中是这样)。但是,如果只在一列中看到匹配项,则会忽略它
MySQL新手。。。如果有更好的查询方法,我将不胜感激。尝试以下方法:
SELECT DISTINCT Source, Source_Description, URL
FROM Staging_Census
WHERE CONCAT(TRIM(Source), TRIM(Source_Description0, TRIM(URL))) NOT IN (SELECT CONCAT(TRIM(Source), TRIM(Source_Description0, TRIM(URL))) FROM DIM_Source);
或
SELECT DISTINCT SC.Source, SC.Source_Description, SC.URL
FROM Staging_Censusc SC
LEFT JOIN DIM_Source DS ON (TRIM(SC.Source), TRIM(AC.Source_Description0, TRIM(SC.URL)) = (TRIM(DS.Source), TRIM(DS.Source_Description0, TRIM(DS.URL))
WHERE DS.DimsourceId IS NULL