比较SQL中的两个不同坐标(加上SUM和其他)

时间:2012-07-20 16:10:08

标签: android sql sqlite

我不想比较我的数据库中的两个坐标,但我无法使用加法或减法。我使用的数据库是Android上的SQLite。

这是我的SQL请求:

SELECT m.numMag, nomMag, photoMag, URLMag, latitudeMag,
longitudeMag, numEns, numAdr 
FROM Mag m, Prix p 
WHERE m.numMag=p.numMag AND p.numProduit=1 
AND latitude <= SUM(48.453354+0.01) 
AND latitude >=SUM(48.453354-0.01)
AND longitude <= SUM(2.306644+0.06) 
AND longitude >= SUM(2.306644-0.06);

当然这个请求是完全错误的,但这是我的最后一次测试。有人可以帮帮我吗?

其他信息:SUM(已生成Float, - / +号已设置)

1 个答案:

答案 0 :(得分:1)

SUM是一个聚合函数,因此当你有GROUP BY时它可以工作。只需删除它。 。

SELECT m.numMag, nomMag, photoMag, URLMag, latitudeMag,
       longitudeMag, numEns, numAdr 
FROM Mag m, Prix p 
WHERE m.numMag=p.numMag AND p.numProduit=1 
      AND latitude <= (48.453354+0.01) 
      AND latitude >=(48.453354-0.01)
      AND longitude <= (2.306644+0.06) 
      AND longitude >= (2.306644-0.06);

您还应该使用正确的连接语法,并且可以简化之间的使用:

SELECT m.numMag, nomMag, photoMag, URLMag, latitudeMag,
       longitudeMag, numEns, numAdr 
FROM Mag m join
     Prix p 
     on m.numMag=p.numMag 
WHERE p.numProduit=1 and
      latitude between (48.453354-0.01) and (48.453354+0.01) and
      longitude between (2.306644-0.06) and (2.306644+0.06)