我有这2个mysql表,我想输出第3个。
table_names:
eid name
100 car1
101 car2
102 car3
table_fuel:
mid fuel
100 30
100 40
101 50
100 60
102 70
输出:
name fuel
car1 30
car1 40
car2 50
car1 60
car3 70
我想要的是e.id和m.id之间的映射,以便显示汽车的名称而不是ID,我试过的是:
SELECT n.name
, f.fuel
FROM table_fuel f
RIGHT
JOIN table_names n
ON n.eid = f.mid
但是我得到错误:令牌不匹配。谢谢你的时间。
答案 0 :(得分:0)
表格之间需要一个简单的JOIN
,如
SELECT table_names.name,
table_fuel.fuel
FROM table_fuel
JOIN table_names
ON table_names.eid = table_fuel.mid;
答案 1 :(得分:0)
我会使用简单的LEFT JOIN:
SELECT n.name, f.fuel
FROM table_names n
LEFT JOIN table_fuel f ON n.eid = f.mid;
使用别名比使用完整的表名要短得多。
答案 2 :(得分:0)
只需将您的table_fuel放在左边,即可创建连接语句:
SELECT a.Name, b.Fuel
FROM table_fuel b
LEFT JOIN table_names a
ON a.eid = b.mid;
答案 3 :(得分:0)
首先解决令牌错误找到XAMPP php.ini文件并通过删除分号取消注释:
session.save_path ="/tmp"
然后重启apache。
然后检查您的查询。
SELECT n.name
, f.fuel
FROM table_fuel f
JOIN table_name n
ON n.eid = f.mid;
点击Demo