因此,我的表如下所示(每个表中的主键是PhoneID,ManufacturerID和OSID。外键在名称前标有星号):
手机
PhoneID
*ManufacturerID
Model
*OSID
Description
ScreenSize
Price
StockQuantity
StorageSize
Image
Thumbnail
IsFlagged
制造商
ManufacturerID
Name
Details
Telephone
操作系统
OSID
Name
Company
Description
我需要做的基本上是一个查询,它将获取制造商名称和电话型号以及其他详细信息并显示出来。例:
如果我有:
制造商行中制造商行中的三星
手机中“模型”行中的Galaxy S3
手机的StorageSize行中有16GB
OS的“名称”行中的Android 4.2
手机价格行中的499.99
我将如何构造查询,以使句子“ Samsung Galaxy S3 16GB-Android 4.2-£499.99?
抱歉,冗长的帖子,感谢您收到的任何帮助/答案
最佳答案
我将如何构造查询,以使句子“ Samsung Galaxy
S3 16GB-Android 4.2-499.99英镑?
select concat(m.Manufacturer, ' ', p.Model, ' ', p.StorageSize, ' - ',
o.Name, ' - ', p.Price)
from Phones p
join Manufacturer m
on p.ManufacturerID = m.ManufacturerID
join OS o
on p.OSID = o.OSID
关于mysql - 需要从多个表中选择,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14674731/