Есть две таблици Таблица1(код1, название1) и Таблица2(код2, название2) надо выбрать из Таблица2 все записи, которых нет в таблице1 при условии, что код>0 Таблица1 Таня 10 Маша 11 Миша 25 Коля 16 Таблица2 Таня 0 Маша 0 Витя 8 Миша 45 Света 47 Коля 65 Результат запроса Витя Света
вот пробовал так [sql] SELECT type.code_type, type.name_type FROM type where count (select glos from glos_type where type.code_type=glos_type.code_type)=0 ) [\sql] не работает
вот навскидку: select Таблица2.название2 from Таблица2 left join Таблица1 on Таблица2.название2 = Таблица1.название1 where Таблица1.название1 is null and Таблица2.код2 > 0
читал документацию по SQL, но ни как не могу понять что делает left join. Обясните доступно. Если можно с примерами!
уже перечитал все, что можно! нельзя сказать, что ничего не понял, но всеже хотелось бы в двух словах что делает left join? что делает on? напрмер select - выбирает записи по условию и без update - изменяет записи по условию и без
почему тогда надо писать select Таблица2.название2 from Таблица2 left join Таблица1 on Таблица2.название2 = Таблица1.название1 where Таблица1.название1 is null and Таблица2.код2 > 0 разве так нельзя select Таблица2.название2 from Таблица2 left join Таблица1 where Таблица1.название1 is null and Таблица2.код2 > 0 and Таблица2.название2 = Таблица1.название1 null означает пустое значение или не существование поля Таблица1.название1?
по идеи должно работать? но учитывая, что Вы явно опытнее меня всеже использовали вариант с on. Почему?
сделал select Таблица2.название2 from Таблица2 inner join Таблица1 on Таблица1.название1 like '%Таблица2.название2%' дает результат 0 рядков. Хотя должно быть точно не 0. в чем ошибка?
Можно, например '%маша%', но "Таблица2.название2" воспринимается как текст, а не как значение ячейки. поэтому и ищутся в Таблица1.название1 ячейки содержащие текст "чето там Таблица2.название2 чето там".
так select model.name_model from model, data where data.name_data like '%model.name_model%' тоже пустой результат, хотя точно совпадения есть