pandas增加一列id列
为了避免N + 1问题 ,Hibernate用户经常使用带有ID列表的IN谓词 。 在这篇文章中,我们将看到那些用户可能只是用一件不好的东西代替一件可怕的东西,虽然更好,但还不好。 原因如下:
N + 1问题
N + 1问题是一个众所周知的问题,在各种 博客 文章中都有记录。 先前链接的文章显示了以下查询集,以解释此问题的性质:
SELECT id, name FROM albums
SELECT id, name FROM songs WHERE album_id = 1
SELECT id, name FROM songs WHERE album_id = 2
SELECT id, name FROM songs WHERE album_id = 3
SELECT id, name FROM songs WHERE album_id = 4
SELECT id, name FROM songs WHERE album_id = 5
当实体配置为延迟获取时,这组查询通常由ORM(例如Hibernate)产生。
本文还通过用IN谓词用单个查询替换第二组N = 5查询来解决该问题:
SELECT id, title, filename FROM songs
WHERE album_id I