-1

我不想比较数据库中的两个坐标,但我不能使用加法或减法。我使用的数据库是 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(生成的浮点数,-/+number 已设置)

4

1 回答 1

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)
于 2012-07-20T16:16:21.770 回答