|
Запроc в bigquery
|
|||
---|---|---|---|
#18+
Добрый день! Я новичок в SQL, подскажите, пожалуйста: У меня есть две таблицы, мне необходимо в одном запросе объединить их таким образом, чтобы получить общую со следующими разделенными типами данных: 1. Есть в первой таблице, но нет во второй 2. Есть во второй таблице, но нет в первой 3. Есть в обеих таблицах Возможно ли это вообще в одном запросе? Поскольку при подобном левом и правом соединении используется WHERE, а использовать его несколько раз для каждого JOINа я не нашел возможности. SELECT * FROM h.employee_shift emp_shift LEFT JOIN h.shift_employee shift_emp1 ON emp_shift.employee_id = shift_emp1.employee_id WHERE shift_emp1.employee_id IS NULL AND emp_shift.start >= '2021-03-01 00:00:00 UTC' AND emp_shift.start <= '2021-03-31 23:59:00 UTC' RIGHT JOIN h.shift_employee shift_emp2 ON emp_shift.employee_id = shift_emp2.employee_id WHERE emp_shift.employee_id IS NULL AND emp_shift.start >= '2021-03-01 00:00:00 UTC' AND emp_shift.start <= '2021-03-31 23:59:00 UTC' JOIN h.shift_employee shift_emp3 ON emp_shift.employee_id = shift_emp3.employee_id WHERE emp_shift.start >= '2021-03-01 00:00:00 UTC' AND emp_shift.start <= '2021-03-31 23:59:00 UTC' Идея моя вот такая, но так использовать WHERE 3 раза нельзя Заранее спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2021, 00:14 |
|
Запроc в bigquery
|
|||
---|---|---|---|
#18+
Евгений3000, тебе продали не всю картинку :) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2021, 09:50 |
|
Запроc в bigquery
|
|||
---|---|---|---|
#18+
А как всё-таки я с помощью full-outer-join разделю данные на 3 категории? 1. Есть в первой таблице, но нет во второй 2. Есть во второй таблице, но нет в первой 3. Есть в обеих таблицах ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2021, 15:09 |
|
Запроc в bigquery
|
|||
---|---|---|---|
#18+
Евгений3000 А как всё-таки я с помощью full-outer-join разделю данные на 3 категории? 1. Есть в первой таблице, но нет во второй 2. Есть во второй таблице, но нет в первой 3. Есть в обеих таблицах А что оно не очевидно из того что выше написано? Там все помоему вполне понятно как делить надо. -- Maxim Boguk лучшая поддержка PostgreSQL: dataegret.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2021, 15:22 |
|
|
start [/forum/topic.php?fid=53&fpage=10&tid=1993963]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
25ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 126ms |
0 / 0 |