2015-02-11 40 views
-1

我無法構建SQL語句。我有一個電腦表和一個操作系統表。操作系統表是一個查找表。MySQL SQL檢索運行特定操作系統排序最受歡迎的第一個計算機的數量

enter image description here

我沒有一個關於如何編寫查詢線索。任何幫助,將不勝感激。

檢索運行每個操作系統的計算機的數量,按照頂部最流行的操作系統排序。

編輯:

是的,這是作業。我在學校學習MySQL,JQuery和XSLT/XML。我是Microsoft Access的專家。我主要在工作中使用Access。如果我不得不解決這個問題,我會編寫一個VBA函數,或者設計一個報告,讓我可以按操作系統分組,然後統計運行每個操作系統的計算機的數量。

我有一種感覺,我需要使用Group By和一個聚合函數,但我仍然不確定如何構造語句。

enter image description here

在這裏輸入的形象描述

enter image description here

我想通了。感謝您的幫助Clay。下面是代碼:

SELECT tblplatform.txtplatform, Count(tblcomputers.txtComputerName) AS CountOftxtComputerName 
 
FROM tblplatform RIGHT JOIN tblcomputers ON tblplatform.idtblplatform = tblcomputers.tblplatform_idtblplatform 
 
GROUP BY tblplatform.txtplatform 
 
ORDER BY Count(tblcomputers.txtComputerName) DESC;

+1

這功課嗎? – dotNET 2015-02-11 03:18:11

+0

你已經做了什麼?你能告訴我們你想要的結果嗎?並且,請在每個表格中提供一些示例數據。 – Rigel1121 2015-02-11 03:20:14

+0

除非您對問題表現出一些最低限度的理解,以及您自己完成了哪些工作來完成自己的查詢以及您遇到了哪些特定的錯誤/問題,否則這類問題在此處被視爲脫離主題。 – dotNET 2015-02-11 03:20:56

回答

0

根據您的問題描述,你需要加入兩個表,使用聚合函數(COUNT,這需要GROUP BY到功能)確定與每個平臺行關聯的計算機行數,然後確定ORDER BY結果。 Check out the reference for MySQL SELECT. 要特別注意關鍵字:COUNT,JOIN,GROUP BY和ORDER BY。

+0

沒問題。在你的學習中祝你好運。 – 2015-02-11 03:58:14