172 похожих чатов

Привет всем! Есть интересный вопрос: Как бы так соорудить запрос, чтобы

если есть находится подзапрос, то логика была одна, а если нет - другая?
SELECT t.name FROM table t

LEFT JOIN table AS table1 тут джоинится таблица, в которой если есть строка - то логика одна, если нет - другая ON какое-то условие

LEFT JOIN table AS table2 таблица для логики 1 ON table1.id IS NOT NULL ...

LEFT JOIN table AS table3 таблица для логики 2 ON table2.id IS NULL

WHERE t.id = table2 OR t.id = table3
Это как бы решение задачи, но лишь то, что в голову пришло, такие LEFT JOIN крайне неэффективны, так как сам join никак не фильтруется по строкам из таблицы FROM
Сначала CASE WHEN пробовал, но оно никак не подходит, COALESCE тоже, думаю, может CTE поможет?

1 ответов

7 просмотров

Вообще странный запрос от слова очень, где таблица джойнится сама на себя по условию. Можете в left join ... on a.id = b.id and (условие соединения)

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
22
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта