MYSQL语句如何查询表中的表中的行?

MYSQL语句如何查询表中的表中的行?,第1张

关联查询即可实现,表1关联表2,条件就是你如何从表1找到表2,关联后可以同时获取两个表的所有字段,就可以过滤字段,指定显示的字段,格式参考:select a.字段,b.genger from 表1 a join 表2 b on a.条件字段=b.条件字段。

假设有若干张表tb1、tb2、tb3,查询各张表中的一些字段,若tb1和tb2中是1对1的关系,tb2和tb3是1对多的关系,若要同时查询tb1、tb2和tb3中的一些字段,对于相同的tb1和tb2对应的数据,可能会有多条查询的结果,如果只想查询tb3中对应的某一条数据,这时候sql该如何去编辑呢?

这时候有两种思路,第一种,先不查询tb3中的字段,先去查询tb1和tb2中的字段,再通过遍历结果集去单独查询tb3中的数据,这样的sql会简化,但在相同的查询条件下,用时会增加很多,因为多次查询数据库会有数据库连接的损耗;第二种,是通过一个sql去直接筛选选出分组,下面我分别列举oracle和mysql的用法

如果tb3中一个country(国家)对应的别名(short_name)有多个,

那对应的原始的sql为

oracle中的用法: 改善sql

mysql中的用法: 改善sql

1

2

update table set name='f' where id = 1

update table set name='f' where id >1 &&id <5


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/zaji/5899425.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-07
下一篇 2023-03-07

发表评论

登录后才能评论

评论列表(0条)

保存