gpt4 book ai didi

mysql - 从联接表中选择多行

转载 作者:行者123 更新时间:2023-11-29 00:57:55 25 4
gpt4 key购买 nike

我有一个表 A,其字段 X 包含一个值列表,如 1,2,3然后是第二个带有字段uid的表B。如果 A.X 包含 1、2、3,我想从表 B 中获取 uid 为 1 或 2 或 3 的行。

我试过这样的加入:

SELECT b.value FROM A a JOIN B b ON b.uid IN ( a.X )

这有点管用,但我当然只在 b.value 中得到 1 个结果。我怎样才能得到所有的结果?我知道我可以只使用第二个查询,但有可能将其合二为一吗?

(我知道这样的结构不好用,应该用n-n表,但这是用过的系统给的)

最佳答案

正如您在问题中所述,这不是一个好的设计。我认为以下应该有效(尽管性能不佳)

SELECT b.value 
FROM A a
JOIN B b ON CONCAT(',',a.X,',') LIKE CONCAT('%,',b.uid,',%')

关于mysql - 从联接表中选择多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5118134/

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