最佳数据库,NOSQL与MySQL

时间:2013-08-06 16:02:36

标签: mysql database nosql

我有一个基于事件和分支的应用程序。我有两个事件,分支和没有。

事件和分支都有纬度和经度。

一个事件可以有多个分支。我想按距离从另一个地理坐标中对这些事件进行排序。

对于带分支的事件,它应该使用其分支的位置来计算它的接近程度,而不管它应该使用事件本身的位置。

在没有性能损失的情况下,这可以在MySQL中实现吗?或者我使用错误的数据库?我是否应该使用另一个带脚本的NOSQL数据库将当前的MySQL和Pod数据导出到它。

这是我在这个框架中使用ATM的基本查询,它添加了一点糖(显然这在普通的MySQL中不起作用),没有分支的事件似乎没有以正确的顺序出现。 / p>

SELECT 
  t.*, 
  DISTANCE(\"$latitude\", \"$longitude\", 
           IF(t.branches.latitude, t.branches.latitude, t.latitude),     
           IF(t.branches.longitude, t.branches.longitude, t.longitude)
  ) as distance 
FROM table as t 
ORDER BY distance.

1 个答案:

答案 0 :(得分:2)

如果实体之间存在任何关系,您希望SQL减少管理这些关系的开销。 (业务逻辑,选择名称where event = something)

如果你想使用数据库进行普通存储,并使用服务器端语言(php,ruby,c#,无论它是什么)进行所有业务逻辑和关系管理,那么NOSQL就更好了。