0
我閱讀了很多關於此主題的主題,但我無法弄清楚我的項目。我有兩張桌子,網格和點。對於1個網格可能有多個點,但是,我只希望點表中的一個結果(多個點中的哪一個無關緊要),或者當網格中沒有點的條目時,我只需要一個結果。使用左連接時限制右表的結果
與查詢: SELECT g.id, g.latStart, g.latEnd, g.lngStart, g.lngEnd, p.teamId FROM grids g LEFT JOIN points p ON p.gridId = g.id
我將獲得全部併網發電項目,加分的名單。但結果並不是我想要的。
我還未找到影象。下面是結果的JSON,因爲我不能把圖片:
{
\t "data":
\t [
\t \t {
\t \t \t "id": 1,
\t \t \t "latStart": "51.878347",
\t \t \t "latEnd": "4.388849",
\t \t \t "lngStart": "51.884847",
\t \t \t "lngEnd": "4.399849",
\t \t \t "teamId": 2
\t \t },
\t \t {
\t \t \t "id": 1,
\t \t \t "latStart": "51.878347",
\t \t \t "latEnd": "4.388849",
\t \t \t "lngStart": "51.884847",
\t \t \t "lngEnd": "4.399849",
\t \t \t "teamId": 2
\t \t },
\t \t {
\t \t \t "id": 1,
\t \t \t "latStart": "51.878347",
\t \t \t "latEnd": "4.388849",
\t \t \t "lngStart": "51.884847",
\t \t \t "lngEnd": "4.399849",
\t \t \t "teamId": 2
\t \t },
\t \t {
\t \t \t "id": 2,
\t \t \t "latStart": "51.878347",
\t \t \t "latEnd": "4.399849",
\t \t \t "lngStart": "51.884847",
\t \t \t "lngEnd": "4.410849",
\t \t \t "teamId": null
\t \t },
\t \t {
\t \t \t "id": 3,
\t \t \t "latStart": "51.878347",
\t \t \t "latEnd": "4.410849",
\t \t \t "lngStart": "51.884847",
\t \t \t "lngEnd": "4.421849",
\t \t \t "teamId": null
\t \t },
\t \t {
\t \t \t "id": 4,
\t \t \t "latStart": "51.878347",
\t \t \t "latEnd": "4.421849",
\t \t \t "lngStart": "51.884847",
\t \t \t "lngEnd": "4.432849",
\t \t \t "teamId": null
\t \t }
\t ]
}
我收到三次ID爲1的系統,因爲有三點。我怎樣才能將收到的積分限制爲一個?我嘗試了子查詢,但我無法讓他們工作。
在此先感謝您的幫助!
這是真棒..和簡單!謝啦!你能解釋爲什麼GROUP BY如此重要嗎?我已經嘗試了沒有GROUP BY的查詢,但是隻有有點時才顯示行。我很想完全理解最後一點。 –
羣是由一個非常強大的條款。這是太寬泛的嘗試解釋在一個SO的答案,但有很多地方可以閱讀它。這是一個很好的開始:http://www.w3schools.com/sql/sql_groupby.asp –
太棒了!非常感謝你今天幫助我 –