sql - SQL : 获取相关属性
问题描述
我devicereplacement
在 SQL 中得到了下表,其中包含 3 列:
id, new_device_id, old_device_id
还有一张device
桌子id
,mac_address
等等
我有以下查询:
select dd.mac_address
from devicereplacement as ddr
inner join devices_device dd on ddr.new_device_id = dd.id
where dd.mac_address = '58155',
我在哪里获得新的设备属性。现在,我希望选择相关的旧设备属性,而不是新设备属性。我认为这应该用子查询来完成,但我无法修复它,因为我做了那些 SQL 查询已经有一段时间了。
我想要什么:旧设备的mac地址,新设备的mac_address == x
解决方案
将另一个联接添加到同一个设备表
select ddo.mac_address
from devicereplacement as ddr
inner join devices_device ddn on ddr.new_device_id = ddn.id
inner join devices_device ddo on ddr.old_device_id = ddo.id
where ddn.mac_address = '58155';
推荐阅读
- ios - 应用内购买的自动更新选项不可见
- python - Python - 在表格中水平插入列表
- android - 如何验证 Raspberry 和 Android 之间的蓝牙通信
- angular - 数据绑定在角度不起作用
- azure - Azure 文件共享不持久
- unity3d - Animator 没有 AnimatorController
- shiny - 在 R 闪亮的 renderDatatable 中创建堆叠条形迷你图
- python - 使用python读取文本表
- android - 响应本机应用程序(android)中的 XMLHttpRequest.xhr.onerror 网络请求失败
- java - Docker build 找不到 COPY 命令的源文件夹