Mysql 无外键联接
如果出现以下表格:Mysql 无外键联接,mysql,sql,Mysql,Sql,如果出现以下表格: x, y, lat, lng 和桌子 lat, lng, Country, State, City 现在,我需要有第一个包含所有值的表,包括lat和lng。另一方面,第二个表中的数据不需要存在,它只是一个可能的扩展 您可以看到,第一个表和第二个表之间存在某种父子关系,所以我考虑使用lat,lng作为外键,因为我要进行连接。另一方面,除lat和lng之外的一切都不需要存在 我是否应该使用外键?没有它们也可以工作,但仍然可以加入,以便能够过滤其他国家、州、市的数据?是和否,取
x, y, lat, lng
和桌子
lat, lng, Country, State, City
现在,我需要有第一个包含所有值的表,包括lat和lng。另一方面,第二个表中的数据不需要存在,它只是一个可能的扩展
您可以看到,第一个表和第二个表之间存在某种父子关系,所以我考虑使用lat,lng作为外键,因为我要进行连接。另一方面,除lat和lng之外的一切都不需要存在
我是否应该使用外键?没有它们也可以工作,但仍然可以加入,以便能够过滤其他国家、州、市的数据?是和否,取决于数据如何进入这些表 是的,如果第二个表中的记录总是在第一个ie之后创建,则第二个表中的数据是稍后将出现的一些信息
否,如果第二个表中的数据将独立于第一个表输入,例如第一个表由用户填写,第二个表由gis数据导入填写……如果是这种情况,在long和lat上对两个表进行索引将足以减轻查询性能的影响。如果强制要求lat,第二个表中的lng应仅包含第一个表中当前显示的值,然后需要外键。否则,您可以在第一个表和第二个表之间使用左联接。您可以在lat和lng上联接,使其唯一