gpt4 book ai didi

mysql - 我只想要表格中的一行。进行 JOIN 更好还是只进行两次选择调用

转载 作者:行者123 更新时间:2023-11-29 23:30:34 24 4
gpt4 key购买 nike

我有两个表,我需要一行包含表 1 的所有列,而仅包含表 2 的 1 列。我通过使用 order by rand() limit 0,1;

获取行

我想知道选择表 1 的所有列然后再次调用从表 2 中获取额外的列是否更有效。由于我只需要一条记录,我担心它在后台做额外的工作来加入当我只需要一行时,表。

我仍在本地开发,我的计算机速度很快,所以我无法区分,但当它上线时,付费服务器上每秒会有很多调用,因此资源很宝贵

最佳答案

按 rand 限制 0,1 排序没有效率;它不会很好地扩展。这是一个明显的设计缺陷。如果您坚持这样做,那么您肯定不想进行联接,因为这将迭代表中的每一行。至少,您应该选择一小部分行样本来从中随机抽取:

$row=SELECT table_rows*rand() FROM INFORMATION_SCHEMA.TABLES WHERE foo and bar
SELECT * FROM foobar LIMIT $row, 1

关于mysql - 我只想要表格中的一行。进行 JOIN 更好还是只进行两次选择调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26608961/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com