我有 '人民'T-SQL SELECT與GROUP BY ID
列
- ID
- 名稱
- 年齡
而且表「表備註':
分列
- ID
- 文本
- FK_Author
我想選擇的音符數從人表中的所有作者和他們的名字和年齡,但我希望將它通過人員ID,而不是姓名。有很多情況下,人們有相同的名字,但ID顯然總是不同的。
實施例(輸入)
人物:
╔════╦═══════╦═════╗
║ ID ║ NAME ║ AGE ║
╠════╬═══════╬═════╣
║ 1 ║ John ║ 12 ║
║ 2 ║ Annie ║ 29 ║
║ 3 ║ John ║ 44 ║
╚════╩═══════╩═════╝
NOTES:
╔════╦═══════╦═══════════╗
║ ID ║ TEXT ║ FK_AUTHOR ║
╠════╬═══════╬═══════════╣
║ 1 ║ 'aaa' ║ 1 ║
║ 2 ║ 'aaa' ║ 1 ║
║ 3 ║ 'aaa' ║ 2 ║
║ 4 ║ 'aaa' ║ 2 ║
║ 5 ║ 'aaa' ║ 3 ║
╚════╩═══════╩═══════════╝
預期結果:
╔═══════╦═════╦════════════╗
║ NAME ║ AGE ║ TOTALCOUNT ║
╠═══════╬═════╬════════════╣
║ John ║ 12 ║ 2 ║
║ Annie ║ 29 ║ 2 ║
║ John ║ 44 ║ 1 ║
╚═══════╩═════╩════════════╝
當我選擇數據時,如果我想選擇此列,我也必須按名稱進行分組,因爲如果我沒有,我會得到錯誤。
這是錯誤的答案,就像我說我不要被名字/年齡螞蟻羣。這個專欄對於不同的人可以是相同的 – Ellbar
NO。你錯了。這個查詢會給你你需要的結果。請記住,您在「GROUP BY」條款 –
中包含「ID」,請參閱此處演示http://www.sqlfiddle.com/#!3/81929/1 –