用SQL怎样根据一个表种的字段ID查出另一个表中的数据?
例如:两个表中的news_type_id 跟 type_id是对应的,根据NEWS 表中的 news_type_id =1 查出 news_type 表中的 type_name
根据 NEWS表中的 news_type_id = 1 查出 news_type表中的 “透明点评” 这条数据,“透明点评”是最后需要查出来的位置数据。
比如表连接的方式就可以写成:
select n.id,t.type_name,title from news as n inner join news_type as t on n.news_type_id=t.type_id;
只查“透明点评”的数据子查询可以写成:
select * from news where news_type_id=(select type_id from news_type where type_name='透明点评');
写法轻松,更新效率高:
update table1
set field1=table2.field1,
field2=table2.field2
from table2
where table1.id=table2.id常规方式,种写法相当于一个 Left join, 以外面的where为更新条数,如果不加where就是所有记录
update table1
set field1=(select top 1 field1 from table2 where table2.id=table1.id)
where table1.id in (condition)