Php 如何从具有相同id的2个或多个条件的2个表中进行选择
我有三张桌子 表1=id专业城市 表2=id-latm1-longm1-latm2--longm2,…再增加2个lat和long 表3=id-latd1-longd1-latd2——longd2,…再增加2个lat和long id是相同的,所有的LAT和LONG都是为一个id为的人提供的。他在4家医院和4家其他机构工作 考虑一下$\u POST提供的varbiales: 美元特产 $userlat $userlong 我想说: 从表1中选择所有内容,其中他的专业=$speciality,他靠近这个lat=$userlat,long=$userlong,距离为4km 我知道这听起来很可笑,但事实就是这样: 我正在使用此方法获取数据库中最近的latlang:Php 如何从具有相同id的2个或多个条件的2个表中进行选择,php,mysql,Php,Mysql,我有三张桌子 表1=id专业城市 表2=id-latm1-longm1-latm2--longm2,…再增加2个lat和long 表3=id-latd1-longd1-latd2——longd2,…再增加2个lat和long id是相同的,所有的LAT和LONG都是为一个id为的人提供的。他在4家医院和4家其他机构工作 考虑一下$\u POST提供的varbiales: 美元特产 $userlat $userlong 我想说: 从表1中选择所有内容,其中他的专业=$speciality,他靠近这
$sql = "SELECT
*,
(
6371 * ACOS(
COS(RADIANS($userlat)) * COS(RADIANS(latm1)) * COS(RADIANS(langm1) - RADIANS($userlang)) + SIN(RADIANS($userlat)) * SIN(RADIANS(latm1))
)
) AS distance
FROM
?
HAVING distance < 20 ";
但如您所见,它只搜索latm1和longm1,而不搜索其他表中的其他值,例如:表2中的latm2和longm2或表3中的latd3和longd3
谢谢你的耐心 是的,你可以
简化语法:
$sql = "SELECT table1.id, table1.val, table2.id, table2.val
FROM table1, table2 WHERE table1.id = table2.id";
我有时会在这个简单的例子中留下它。这三个表之间是如何相互关联的?它们之间有什么关系?是的,就像我说的,每个表对每个人都有相同的id。我不知道您想做什么。。。表2和表3的区别是什么?你所说的区别是什么意思?有3个表,每个表都有一个id,还有一些其他冒号,我在每个表中用相同的id排一行,好吗?