gpt4 book ai didi

Mysql - 列关联/加入

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

我不知道如何解释我的问题所以这里是一个例子:

餐 table 用品

id_product / name_product
1 / aphone
2 / bphone

表 tyds,product_tyd = id_product

id_tyd     / product_tyd   /    user_tyd   /   action_tyd    /  data_tyd
11 / 1 / 1 / 5 / null
12 / 1 / 1 / 8 / 150
13 / 1 / 2 / 3 / null
14 / 1 / 2 / -8 / 250
15 / 2 / 3 / 2 / null
16 / 2 / 3 / 8 / 150
17 / 2 / 2 / 6 / null
18 / 2 / 2 / 8 / 250

table collections 与 table tyds 完全相同,但对于旧行:

id_collection / product_collection / user_collection / action_collection / data_collection

1 / 1 / 9 / 5 / null
2 / 1 / 9 / -3 / null
3 / 1 / 9 / -8 / 150

所以我想选择行 - action_collection = 8 或 -8 - action_tyd = 8 或 -8每行都有 data_tyd 和/或 data_collection 值,但仅针对特定的 id_product...

类似的东西:

我期待对 id_product = 1 的请求的结果:

id_product    /    user_x    /   action_x  / data_x
1 / 1 / 8 / 150
1 / 2 / -8 / 250
1 / 9 / -8 / 150

所以重点是依赖 action_tyd 和 data_tyd,我在其他请求中使用 CASE 来过滤行,无论哪个表在...除了当然不是相同的列名...

我希望我的例子很清楚...我实际上是在尝试在两个单独的请求中做到这一点。一个用于表 tyds,一个用于表集合,我认为它可以完成,但一个请求也可以完成这项工作......

感谢您的帮助!

最佳答案

我认为你应该将 tydscollections 合并到一个表中(用一个合适的列来标记每条记录来自哪个表),但就目前情况而言你'我们只是想执行一个 UNION :

SELECT product_tyd AS id_product,
user_tyd AS user_x,
action_tyd AS action_x,
data_tyd AS data_x
FROM tyds
WHERE product_tyd = 1 AND action_tyd IN (-8,8)

UNION ALL

SELECT product_collection,
user_collection,
action_collection,
data_collection
FROM collections
WHERE product_collection = 1 AND action_collection IN (-8,8)

关于Mysql - 列关联/加入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16524746/

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