前3个结果的SQL查询

Reh*_*hmy 1 php mysql mysqli

我给自己定的页,每页都有PageID,并且将记录的唯一访问者的信息IP ,Country,Browser,SystemDate访问

这是数据库表的示例

-------------------------------------------------------------------
| PageID |     IP     | Country |  Browser | System  |   Date     | 
-------------------------------------------------------------------
|    1   | 00-00-00-1 |   UK    |  Chrome  |   Win7  | 2016-05-22 |
-------------------------------------------------------------------
|    6   | 00-00-00-2 |  France | Firefox  |   Win8  | 2016-05-25 |
-------------------------------------------------------------------
|    1   | 00-00-00-3 |   USA   | Firefox  |  WinXP  | 2016-05-26 |
-------------------------------------------------------------------
|    8   | 00-00-00-4 |  Spain  |   Opera  | Android | 2016-05-28 |
-------------------------------------------------------------------
|    1   | 00-00-00-5 |    UK   |  Chrome  |  Win10  | 2016-06-01 |
-------------------------------------------------------------------
|    8   | 00-00-00-6 |  Italy  |  Safari  |Kardishan| 2016-06-02 |
-------------------------------------------------------------------
|    5   | 00-00-00-7 |   USA   | Unknown  | Android | 2016-06-02 |
-------------------------------------------------------------------
|    3   | 00-00-00-8 |    UK   |  Firefox |   Win7  | 2016-06-02 |
-------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)

我的问题

1)如何查询前往访客来自的前3个国家?从上面的样本结果应该是: -

UK        3
USA       2
France    1
Run Code Online (Sandbox Code Playgroud)

2)如何进行相同的查询以获得访客来自前3个国家的地方PageID = 1,结果应该是: -

UK    2
USA   1
Run Code Online (Sandbox Code Playgroud)

〜这将有助于我理解如何生成静力学,谢谢

Gio*_*sos 5

这将为您提供最佳的3整体国家:

SELECT Country, COUNT(*)
FROM mytable
GROUP BY Country 
ORDER BY COUNT(*) DESC LIMIT 3
Run Code Online (Sandbox Code Playgroud)

要获得3特定的顶部PageID只需添加一个WHERE PageID = 1子句.