SQL-запрос / CTE для таблицы связей, имеющий много-много связей - PullRequest
0 голосов
/ 16 февраля 2019

У меня есть две таблицы A и B.B может иметь много записей A, но B не будет иметь записей A

Один-ко-многим -> в одну сторону

Сейчас

Таблица A :

Id    Name 
----------    
1     Rule1
2     Rule2

Таблица B :

Id TargetedTypeId TargetedId  TargetingType TargetingId Status

TargetedType Таблица:

Id   Name  
--------------
1    Users                          
2    Employee                                      

TargetingType таблица:

Id   Name
-----------------
1    Vegetable  
2    Fruits  

Пользователи таблица:

Id   Name
--------------
1    Abc                             
2    xyz

Овощи таблица:

Id    Name
-----------------
1     Onion                   
2     Potato                 

Фрукты таблица:

Id    Name
---------------    
1     Apple
2     Orange

Таблица B будет иметь такие строки:

Id | TargetedTypeId | TargetedId (Table A Ids) | TargetingType | TargetingId | Status
-----------------------------------------------------------------------
 1           1                 2            1               2             1
 2           1                 2            1               1             1
 3           1                 2            2               1             1
 4           1                 2            2               2             1

Пожалуйста, помогите мне написать запроскоторая будет извлекать записи таблицы A, представленные в B со статусом 1, и извлекать все типы таргетинга, а также получать информацию о фруктах, если это фрукт и овощ, если тип овоща, который является TargetingType, и извлекать его данные с соответствующей таблицей фруктов / овощей с пагинацией

...