私は次のモデルを持っています:
私はしばらくこれに取り組んできましたが、まだ適切に取り組む方法がわかりません。エイリアス化された 2 つのサブクエリの結合、2 つのビューの結合については既に検討しており、非常に醜いオールインワン クエリを試しましたが、いずれも機能しませんでした。
私の質問は簡単です:
deivce_names.name を選択して、それらをモデルとメーカーに一致させるにはどうすればよいですか?
私は次のモデルを持っています:
私はしばらくこれに取り組んできましたが、まだ適切に取り組む方法がわかりません。エイリアス化された 2 つのサブクエリの結合、2 つのビューの結合については既に検討しており、非常に醜いオールインワン クエリを試しましたが、いずれも機能しませんでした。
私の質問は簡単です:
deivce_names.name を選択して、それらをモデルとメーカーに一致させるにはどうすればよいですか?
SELECT
name, manufacturer, model
FROM
device_names
JOIN devices ON (device_names.id = name_id)
JOIN devices_generic ON (generic_device_id = devices_generic.id)
JOIN device_manufacturers ON (manufacturer_id = device_manufacturers.id)
JOIN device_models ON (model_id = device_models.id)
SELECT dm1.manufacturer, dm2.model from device_manufacturers as dm1 join devices_generic as dg on dg.manufacturer_id = dm1.id join device_models as dm2 on dm2.id = dg.model_id join devices as d2 on d2.generic_device_id = dg.id join device_names as dn on dn.id = d2.name_id where name = 'foo'
将来的には、単にデータをフィドルに入れて、そこで遊んでみたいと思うかもしれません。
select
device_names.name as device_name,
device_manufacturers.name as device_manufacturer_name,
device_models.name as device_model_name
from deivce_names
join device on device.name_id = deivce_names.id
join devices_generic on devices_generic.id = devices.generic_device_id
join device_manufacturers on devices_generic.manufacturer_id = device_manufacturers.id
join device_models on device_models.id = devices_generic.model_id