1
我發現我不知道如何在SQL Server中對查詢結果進行分組。我有SQL Server 2005中有三個表:跨越三個表的SQL Server中的GROUP BY
域:
- id
- name
實體:
- domain_id
- user_id
用戶:
- id
- login
因此,它是跨第三個表的兩個表之間的常見關係,其中幾個域可能與一個用戶有關。
T-SQL查詢:
SELECT domain.name, users.login
FROM domain, entity, users
WHERE domain.id = entity.domain_id AND entity.user_id = users.id
GROUP BY users.login, domain.name
回報:
+------+-------+
| name | login |
+------+-------+
| dom1 | user1 |
| dom4 | user1 |
| dom5 | user1 |
| dom2 | user2 |
| dom3 | user3 |
+------+-------+
我的問題是如何創建的T-SQL查詢它作爲MySQL的返回相同的:
SELECT domain.name, user.login
FROM domain, entity, user
WHERE domain.id = entity.domain_id AND entity.user_id = user.id
GROUP BY user.login
+------+-------+
| name | login |
+------+-------+
| dom5 | user1 |
| dom2 | user2 |
| dom3 | user3 |
+------+-------+
您的查詢應該在MySQL和SQL Server的工作。你的表格內容有可能不同嗎? – Andomar 2012-08-11 11:13:42
@Andomar:第二個查詢具有'GROUP BY'中缺少的'domain.name'。 – 2012-08-11 11:19:26
@ypercube:對,令人驚訝的壽,因爲我希望SQL Server返回一個錯誤的'組by'列 – Andomar 2012-08-11 11:26:19