Php MYSQL查询列是否为空
我有下面的语句,但我想做的是找到一种方法,说明它返回的insert是否为空Php MYSQL查询列是否为空,php,mysql,sql,Php,Mysql,Sql,我有下面的语句,但我想做的是找到一种方法,说明它返回的insert是否为空N/a。我会使用if语句还是在DB中设置默认值 代码: $query = $this->db->query("SELECT f.film_id 'Film ID', f.film_name 'Film Name', u.user_first_name 'First Name', u.user_surname 'Surname', u.user_address_line1 'Address1', u.user_a
N/a
。我会使用if语句还是在DB中设置默认值
代码:
$query = $this->db->query("SELECT f.film_id 'Film ID', f.film_name 'Film Name', u.user_first_name 'First Name', u.user_surname 'Surname', u.user_address_line1 'Address1', u.user_address_line2 'Address2', u.user_towncity 'City', u.user_us_state_id 'US State', u.user_non_us_state_county 'Non US State', u.user_country 'Country' FROM films f
INNER JOIN users u ON u.user_id = f.user_id WHERE f.active = 0");
return $query;
您可以使用和更新将该列设置为N/A,其中该列为null
UPDATE tablename SET column='N/A' WHERE column IS NULL
您可以使用如下
coalesce
函数轻松覆盖空列:
SELECT
f.film_id 'Film ID',
f.film_name 'Film Name',
coalesce(u.user_first_name, 'N/A') 'First Name',
// ^^ Guessing that this might sometimes be the null column.
u.user_surname 'Surname',
u.user_address_line1 'Address1',
u.user_address_line2 'Address2',
u.user_towncity 'City',
u.user_us_state_id 'US State',
u.user_non_us_state_county 'Non US State',
u.user_country 'Country'
FROM
films f
INNER JOIN users u
ON u.user_id = f.user_id
WHERE f.active = 0
如果名字字段为空,则输入“N/A”。这将在执行查询时将列中的空字符串替换为
N/A
SELECT ..., IF(column = '', 'N/A', column) AS column, ...
哪一列可以为空?您的意思是如果查询不返回任何行?你应该在PHP中这样做。“empty”是指“empty string”还是
NULL
?我想知道为什么这被接受,因为他在上面的评论中写道,他指的是空字符串,而不是NULL。