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 –
太棒了!非常感谢你今天帮助我 –