繁体   English   中英

来自3个表的MySQL查询

[英]MySQL Query from 3 tables

我有3张桌子。

Mark
id_mark
mark_name

示例记录:1,“福特”


Model
id_model
id_mark
mondel_name

示例记录:1、1,“焦点”


Adds
id_adds
id_model
name
price
etc.

示例记录:1 1'我的广告',20000

如何执行返回结果示例的查询:

My ad Ford Focus 20000

使用准确的拼写:

SELECT a.name, mk.mark_name, mo.mondel_name, a.price
FROM Adds a
INNER JOIN Model mo ON mo.id_model = a.id_model
INNER JOIN Mark mk ON mk.id_mark = mo.id_mark

尽管我认为您应该有一个id_model表,该id_model表仅由id_modelid_mark组成,并且键由这两个字段组成,但不应在Model表中包括id_mark

select adds.id_model, mark.mark_name, model.model_name adds.price
from mark, model, adds
where model.id_mark = mark.id_mark and adds.id_model = model.id_model
select a.name, ma.mark_name, mo.model_name, a.price
from adds a, mark ma, model mo
where a.id_model = mo.id_model
and ma.id_mark = mo.id_mark

小心数据模型,如果您只是这样查询,并且该模型有多个标记,您将得到类似

我的广告福特Focus 20000我的广告菲亚特Focus 20000

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM