如何从一个共享值与另一个表中的共享值匹配的表中获取SQL值?
我只是想说我对查询有一个非常基本的了解,我自己也能做一些简单的查询,我只是不确定这一点。。。我想这可能是某种形式的加入,但不确定如何实现如何从一个共享值与另一个表中的共享值匹配的表中获取SQL值?,sql,select,join,Sql,Select,Join,我只是想说我对查询有一个非常基本的了解,我自己也能做一些简单的查询,我只是不确定这一点。。。我想这可能是某种形式的加入,但不确定如何实现 Table 1 = "device" tkmodel name description ======= ==== ================ 300 ABCD description abcd 300 EFGH description efgh 115 IJKL description ijkl 121 MNOP
Table 1 = "device"
tkmodel name description
======= ==== ================
300 ABCD description abcd
300 EFGH description efgh
115 IJKL description ijkl
121 MNOP description mnop
200 QRST description qrst
115 UVWX description uvwx
305 WXYZ description wxyz
300 DCBA description dcba
Table 2 = "model"
enum name tkmodel
==== ========================== =======
0 Descriptive model name 300 300
1 Descriptive model name 115 115
2 Descriptive model name 200 200
3 Descriptive model name 121 121
4 Descriptive model name 305 305
鉴于上面的两个表,我想打印出3列。基本上,我希望这3列来自“设备”表。但是,我不想打印表1中的“device.tkmodel”编号,而是想将该“tkmodel”编号与表2中的一行匹配,并打印表2中该行的“name”列
因此,我尝试实现的结果输出如下所示:
SELECT d.tkmodel, d.name, d.description FROM device d
因此,目标是打印表1中的数据。但是,我不想打印表1中显示的“tkmodel”列,而是想打印表2中的行中相应的“model.name”字段,其中“device.tkmodel=model.tkmodel”
表2中的“tkmodel”编号不重复,它是该表中的唯一值,因此应该只有一个匹配项。这是一个基本用例:
你能告诉我更多关于钥匙的事吗?我的意思是主键,唯一索引?对不起,我没有太多关于数据库/表本身的信息,所以我不确定哪些是主键,索引等等。。。但是,我认为穆雷尼克的回答是正确的我只是想确定你没有弄错桌子的设计好。。。!谢谢Mureinik,这正是我需要的!
device.name model.name device.description
=========== ========================== ==================
ABCD Descriptive model name 300 description abcd
EFGH Descriptive model name 300 description efgh
IJKL Descriptive model name 115 description ijkl
MNOP Descriptive model name 121 description mnop
QRST Descriptive model name 200 description qrst
UVWX Descriptive model name 115 description uvwx
WXYZ Descriptive model name 305 description wxyz
DCBA Descriptive model name 300 description dcba
SELECT d.name, m.name, d.description
FROM device d
JOIN model m ON d.tkmodel = m.tkmodel