Если данные в поле не существует вывести пустое значение - MySQL

Узнай цену своей работы

Формулировка задачи:

Приветствую, имеется запрос:
SELECT `crm_map`.`id`, `crm_mapTimeCity`.`description`, `crm_mapTimeCity`.`time`, `crm_map`.`city`, `crm_map`.`nameClient`, 
`crm_map`.`organizaciya`, `crm_map`.`adres`, `crm_map`.`email`, `crm_map`.`coordinate`, `crm_map`.`phone`, `crm_map`.`comment`, 
`crm_map`.`pricePrihod` 
FROM `crm_map`, `crm_mapTimeCity` 
WHERE `crm_map`.`city` = `crm_mapTimeCity`.`city` ORDER BY `crm_map`.`city` asc
Так вот если в "crm_mapTimeCity" нет города, который присутствует в таблице "crm_map", я не получаю поле из "crm_map", а нужно сделать так, чтобы, если в "crm_mapTimeCity" города нет, то поле из "crm_map" вывелось с пустым полем из crm_mapTimeCity.

Решение задачи: «Если данные в поле не существует вывести пустое значение»

textual
Листинг программы
FROM `crm_map` LEFT JOIN `crm_mapTimeCity` 
ON `crm_map`.`city` = `crm_mapTimeCity`.`city`

Объяснение кода листинга программы

В данном коде происходит объединение (JOIN) двух таблиц: crm_map и crm_mapTimeCity по полю city. Это позволяет получить данные из обеих таблиц в одном запросе.

  1. FROMcrm_mapLEFT JOINcrm_mapTimeCity — Здесь указывается, что данные будут браться из таблицыcrm_mapиcrm_mapTimeCity`.
  2. ON crm_map.city = crm_mapTimeCity.city — Здесь указывается условие объединения: поля city в обеих таблицах должны быть равны. В результате выполнения данного запроса, для каждой строки в таблице crm_map будут возвращены соответствующие данные из таблицы crm_mapTimeCity, если они есть. Если данных в таблице crm_mapTimeCity для данной строки нет, то соответствующие поля из таблицы crm_mapTimeCity будут возвращены как пустые значения.

Оцени полезность:

9   голосов , оценка 4 из 5
Похожие ответы