пусть говорят, я хочу создать что-то вроде этогоSQL SELECT заявление в случае
select t.*,
(case when (select name from table2 where idtable2 = t.idtable1)= NULL then '0'
end) as result
from table1 t
, как я могу это сделать? спасибо
извините мои ошибки, да что заявление он works..but не работает, если есть подзапрос перед сазом ..
выбери т. * (Выберите имя из Table3 где idtable3 = t.idtable3), как nametable3, (случай, когда (выберите имя из table2 где idtable2 = t.idtable1) = NULL, то '0' конец) как результат от table1 т
, который должен работать, но может потребоваться 'LIMIT 1'; но обычно (не всегда) быстрее просто подключиться к двум таблицам и использовать значение напрямую. – Uueerdo
Вы должны объяснить логику, которую вы хотите. –
Коррелированный подзапрос в списке SELECT запроса, возвращающего каждую строку в таблице. Если таблица1 содержит миллион строк, этот подзапрос будет выполняться миллион раз. * Дрожь *. (Я так хочу поставить мой мизинец пальцем в угол рта, д-р Злой стиль, когда я говорю ... «один мезеон строк».) – spencer7593