SQL连表查询跟一个个表查询那个快各有什么优点和缺点
答案:4 悬赏:50 手机版
解决时间 2021-02-13 17:58
- 提问者网友:精神病院里
- 2021-02-13 12:38
SQL连表查询跟一个个表查询那个快各有什么优点和缺点
最佳答案
- 五星知识达人网友:底特律间谍
- 2021-02-13 14:04
数据量小的话,基本没有区别,
数据量大的话,一个个要快一些,相当于是用空间换时间,用join不需要查找是否存在记录,同样都是一个sql语句解决。
SELECt AT.ID,
(CASE WHEN BT.value IS NULL THEN 0
ELSE
BT.value
END) AS VALUE
FROM A AS AT
LEFT JOIN B AS BT ON AT.ID = BT.ID
数据量大的话,一个个要快一些,相当于是用空间换时间,用join不需要查找是否存在记录,同样都是一个sql语句解决。
SELECt AT.ID,
(CASE WHEN BT.value IS NULL THEN 0
ELSE
BT.value
END) AS VALUE
FROM A AS AT
LEFT JOIN B AS BT ON AT.ID = BT.ID
全部回答
- 1楼网友:冷風如刀
- 2021-02-13 16:59
一条语句速度快,用join不需要查找是否存在记录,同样都是一个sql语句解决。
SELECt AT.ID,
(CASE WHEN BT.value IS NULL THEN 0
ELSE
BT.value
END) AS VALUE
FROM A AS AT
LEFT JOIN B AS BT ON AT.ID = BT.ID
SELECt AT.ID,
(CASE WHEN BT.value IS NULL THEN 0
ELSE
BT.value
END) AS VALUE
FROM A AS AT
LEFT JOIN B AS BT ON AT.ID = BT.ID
- 2楼网友:毛毛
- 2021-02-13 15:40
数据量小的话,基本没有区别,
数据量大的话,一个个要快一些,相当于是用空间换时间
数据量大的话,一个个要快一些,相当于是用空间换时间
- 3楼网友:逃夭
- 2021-02-13 14:15
一般情况下是一条语句来的快。
如果表2的数据比表1多出几个数量级的话,并且表2中该id字段有索引,则有可能使用多次查询会快点。
一次查询的优点是只需要一次连接,数据库查询的时候,连接是个耗时的操作。缺点是如果两个表数据多,则中间结果集太大,需要较多的内存资源。
多次查询的优缺点和一次查询正好反过来。另外多次查询也可以在程序中对每一次查询的中间结果做处理,这是一个灵活性。
如果表2的数据比表1多出几个数量级的话,并且表2中该id字段有索引,则有可能使用多次查询会快点。
一次查询的优点是只需要一次连接,数据库查询的时候,连接是个耗时的操作。缺点是如果两个表数据多,则中间结果集太大,需要较多的内存资源。
多次查询的优缺点和一次查询正好反过来。另外多次查询也可以在程序中对每一次查询的中间结果做处理,这是一个灵活性。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯