我有一个表,可能有大约100条记录,带有一个用户名字段。可能有许多具有相同用户名的记录。我如何确保每个用户名仅返回一条记录,而不管它是哪一条记录?
例如下表
users
username item firstname lastname
-------------------------------------------------
superhans shoes super hans
jez hat jeremy sisto
jez book jeremy sisto
flinto train fred flintstone
superhans shirt super hans
Run Code Online (Sandbox Code Playgroud)
仅返回以下内容:
username item firstname lastname
-------------------------------------------------
superhans shoes super hans
jez hat jeremy sisto
flinto train fred flintstone
Run Code Online (Sandbox Code Playgroud)
你可以使用DISTINCT,如果你不希望返回在搜索结果中的项字段:
SELECT DISTINCT用户名,名字,姓氏FROM用户
如果要包括项目字段,则必须执行以下操作:
SELECT t.username,
(SELECT TOP 1 item FROM users WHERE username = t.username) AS item,
t.firstname,
t.lastname
FROM (
SELECT DISTINCT username, item, firstname, lastname
FROM users
) AS t
Run Code Online (Sandbox Code Playgroud)
使用这样的查询没有多大意义。您能否更具体地说明您要实现的目标?
| 归档时间: |
|
| 查看次数: |
3693 次 |
| 最近记录: |