gpt4 book ai didi

mysql - 如何对两个单独的表使用 mysql WHERE IN

转载 作者:行者123 更新时间:2023-11-29 07:04:30 25 4
gpt4 key购买 nike

我有两张 table

books_tbl:

blocks  side-bar   top-bar
23,45 3,15 11,56

pages_tbl:

id title
1 ff
3
11
15

我想从 pages_tbl 中选择行,其中页面 id 已包含 books_table 中的 block 、侧边栏或顶部栏列。

如何处理这个?

最佳答案

您确实应该考虑修复表结构。切勿在单个单元格中存储多个值。请参阅标准化。

在这种情况下您不能,请尝试使用 find_in_set 函数。

select
from pages_tbl p
where exists (
select 1
from books_tbl b
where find_in_set(
p.id,
concat(b.blocks, ',', b.side_bar, ',', b.top_bar)
) > 0
);

请记住,这很慢,因为服务器无法使用索引(如果有)。

关于mysql - 如何对两个单独的表使用 mysql WHERE IN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42254769/

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