私の問題を説明する方法がわからないので、ここに例を示します:
テーブル製品
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 OR -8 - action_tyd = 8 OR -8 で、各行に対して data_tyd AND/OR 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 AND data_tyd に依存することです。これは、他のリクエストで CASE を使用し、どのテーブルが含まれているかに関係なく行をフィルター処理することです...もちろん、同じ列名ではないことを除いて...
私の例が明確であることを願っています...私は実際に2つの別々のリクエストでそれを作ろうとしています. 1 つはテーブル tyds 用、もう 1 つはテーブル コレクション用で、それは可能だと思いますが、1 つのリクエストでも作業を行うことができます...
ご協力いただきありがとうございます !