Sql server 消除重复值的SQL查询
此查询表示第二个表中的所有记录和第一个表中的匹配记录。现在我的问题是,2015年2月24日,第二个表中有重复的名称,我希望第二个表中有不同的名称,然后是第一个表中的匹配值。现在,我的查询显示了第二个表中的所有重复值以及第一个表中的匹配记录。在这方面没有任何帮助。谢谢当前,您的查询从第一个表(日期为“2015/02/24”)中获取所有行,并从第二个表中获取匹配的记录 希望您的表有一个主键(示例中的列Sql server 消除重复值的SQL查询,sql-server,Sql Server,此查询表示第二个表中的所有记录和第一个表中的匹配记录。现在我的问题是,2015年2月24日,第二个表中有重复的名称,我希望第二个表中有不同的名称,然后是第一个表中的匹配值。现在,我的查询显示了第二个表中的所有重复值以及第一个表中的匹配记录。在这方面没有任何帮助。谢谢当前,您的查询从第一个表(日期为“2015/02/24”)中获取所有行,并从第二个表中获取匹配的记录 希望您的表有一个主键(示例中的列id)。然后你可以这样做: SELECT first.name,first.country, sec
id
)。然后你可以这样做:
SELECT first.name,first.country, second.name, second.string
FROM
first LEFT OUTER JOIN second
ON
first.name = second.name
WHERE
first.date='2015/02/24'
如果只添加“distinct”会发生什么?查询意味着
第一个表中的所有记录
而不是第二个表,只匹配第二个表中的行,gooleROW_NUMBER()
以获得不同的值。ohh yaa恰好位于左侧。你完全正确。但我希望第二个表中的名称不同,而不是重复,并且它们的匹配记录来自第一个表。
SELECT first.name,first.country, second.name, second.string
FROM
first
LEFT OUTER JOIN second
ON
second.id = (SELECT min(id) FROM second_min WHERE first.name = second_min.name)
WHERE
first.date='2015/02/24'