簡體   English   中英

MYSQL查詢列是否為空

[英]MYSQL Query if a column is empty

我有以下聲明,但是我想做的是找出一種方法來說明其是否返回空插入N/A 我將使用if語句還是在數據庫中設置默認值?

碼:

$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替換列中的空字符串。

SELECT ..., IF(column = '', 'N/A', column) AS column, ...

您可以使用和更新以將列更改為N / A,其中列為空。

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”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM