Я использую php для компиляции длинного запроса mySQL. Для контекста я делаю MySQL-запрос, который просматривает таблицу 'rentals', в которой есть поля 'id', 'rent', 'type', 'num_bedrooms'. Пример записи может быть:
аренда = 600, тип = дом, num_bedrooms = 5
или
аренда = 450, тип = квартира, num_bedrooms = 3
При заполнении поля поиска пользователь имеет возможность искать «любой» для «типа» и «num_bedrooms». Обращая внимание на строку SQL 'type NOT NULL', мой вопрос:
Можно ли вместо этого сказать «тип = НЕ НУЛЬ»?
(у меня есть идея, что если пользователь ищет «any» для «type», то я устанавливаю переменную «$ type» в php как «house» для поиска домов, «apartment» для поиска квартир или «NOT NULL» найти все)
<?php
$min_rent = 200;
$max_rent = 1000;
$type = "NOT NULL"; //or it can be equal to "house" or "apartment"
$num_bedrooms = 2; //e.g. 2 or more bedrooms
$sql = "SELECT * FROM properties WHERE ";
$sql .= "rent >= {$min_rent} AND rent <= {$max_rent} AND ";
$sql .= "type = {$type} "; //in this case, I want 'type' to equal 'NOT NULL'
$sql .= "num_bedrooms >= {$num_bedrooms} ";
?>
Я не могу проверить это, потому что в данный момент я не на своем тестирующем ПК, но я очень незнаком с заявлениями mySQL и хотел знать, возможно ли это. Спасибо