我有一个使用内连接搜索的查询,但浏览器显示语法消息错误
20您的 SQL 语法有误;查看与您的 MySQL 服务器版本相对应的手册,了解在第 17 行附近使用“=”或“village =”)的正确语法
谁能告诉我我的查询有什么问题???
查询:
$sql = mysql_query("SELECT user_id,first_name, last_name, birth_date, registered_date,
s.specialization_name,
g.governorate_name,
d.district_name,
v.village_name
FROM members u
INNER JOIN specialization s
ON u.specialization = s.specialization_id
INNER JOIN governorate g
ON u.governorate = g.governorate_id
INNER JOIN districts d
ON u.district = d.district_id
INNER JOIN village v
ON u.village = v.id
where (governorate = ''or governorate = '$bygov') or
(district = '' or district = '$bydist') or
(village = '' or village = '$byvillage')")
or die(mysql_error());
最佳答案
你需要引用你的字符串:
$sql = mysql_query("SELECT user_id,first_name, last_name, birth_date, registered_date,
s.specialization_name,
g.governorate_name,
d.district_name,
v.village_name
FROM members u
INNER JOIN specialization s
ON u.specialization = s.specialization_id
INNER JOIN governorate g
ON u.governorate = g.governorate_id
INNER JOIN districts d
ON u.district = d.district_id
INNER JOIN village v
ON u.village = v.id
where ('$bygov' = '' or governorate = '$bygov') and
('$bydist' = '' or district = '$bydist') and
('$byvillage' = '' or village = '$byvillage')")
or die(mysql_error());
关于php - 使用 php mysql 和 inner join 的语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16636493/