我需要从 postgresql 数据库中提取一些数据,从两个 tobles 中的每一个中提取一些元素。这些表包含与物理网络设备相关的数据,其中一个表专门用于这些设备的 MAC 地址。每个设备都由位置(车辆)和功能(dev_name)标识。
表1(资产):
vehicle
dev_name
dev_serial
dev_model
表2:(mac)
vehicle
dev_name
mac
interface
我尝试了什么:
SELECT assets.vehicle, assets.dev_name, dev_model, dev_serial, mac
FROM assets, macs
AND interface = 'E0'
ORDER BY vehicle, dev_name
;
但它似乎不像我想象的那样匹配车辆和 dev_name。相反,它似乎打印了 mac 和 dev_serial 的每个组合,这不是预期的输出,因为我想要每个组合一行。
如何根据 assets.dev_name = macs.dev_name 和 assets.vehicle = macs.vehicle 确保它的 mac 地址与设备匹配?
注意: 中的某些设备assets
可能没有记录的 mac 地址mac
,在这种情况下,我希望它们以空的 mac 显示