2013-07-24 29 views
50

Bir alanın boş veya boş olup olmadığını nasıl kontrol edeceğimi anlamaya çalışıyorum. Ben! = ""Alan boş veya boş mysql olup olmadığını nasıl kontrol edilir?

SELECT IFNULL(field1, 'empty') OR field1 != "" as field1 from tablename. 

herhangi bir fikir gibi bir şey nasıl bunu gerçekleştirmek için bir ek onay alan1 eklemem gerekiyor bu

SELECT IFNULL(field1, 'empty') as field1 from tablename. 

var?

cevap

116

Ya kullanmak

SELECT IF(field1 IS NULL or field1 = '', 'empty', field1) as field1 
from tablename 

veya

SELECT case when field1 IS NULL or field1 = '' 
      then 'empty' 
      else field1 
     end as field1 
from tablename 

yalnızca çalışırken o zaman da ifnull kullanabilirsiniz boş dizeleri null değil kontrol etmek istiyorsanız

. Ancak bu boş dizeler için de uygun değildir.

9

Alternatif olarak aynı için CASE kullanabilirsiniz:

SELECT CASE WHEN field1 IS NULL OR field1 = '' 
     THEN 'empty' 
     ELSE field1 END AS field1 
FROM tablename. 
0

PHP kontrol etmek istiyorsanız, o zaman böyle bir şey yapmak gerekir:

$query_s =mysql_query("SELECT YOURROWNAME from `YOURTABLENAME` where name = $name"); 
$ertom=mysql_fetch_array($query_s); 
if ('' !== $ertom['YOURROWNAME']) { 
    //do your action 
    echo "It was filled"; 
} else { 
    echo "it was empty!"; 
} 
+2

'$ isnull =:; burada' biraz daha kısa .. –

0
SELECT * FROM ( 
    SELECT 2 AS RTYPE,V.ID AS VTYPE, DATE_FORMAT(ENTDT, ''%d-%m-%Y'') AS ENTDT,V.NAME AS VOUCHERTYPE,VOUCHERNO,ROUND(IF((DR_CR)>0,(DR_CR),0),0) AS DR ,ROUND(IF((DR_CR)<0,(DR_CR)*-1,0),2) AS CR ,ROUND((dr_cr),2) AS BALAMT, IF(d.narr IS NULL OR d.narr='''',t.narration,d.narr) AS NARRATION 
    FROM trans_m AS t JOIN trans_dtl AS d ON(t.ID=d.TRANSID) 
    JOIN acc_head L ON(D.ACC_ID=L.ID) 
    JOIN VOUCHERTYPE_M AS V ON(T.VOUCHERTYPE=V.ID) 
    WHERE T.CMPID=',COMPANYID,' AND d.ACC_ID=',LEDGERID ,' AND t.entdt>=''',FROMDATE ,''' AND t.entdt<=''',TODATE ,''' ',VTYPE,' 
    ORDER BY CAST(ENTDT AS DATE)) AS ta 
+0

herkes yapabilir (boş ($ ertom [ 'YOUROWNAME']) boş boş değil?) Qry's solution.its bir koşum qry bulmak ve herkes için yararlı olacağını umuyoruz – user7256715

0
oluşturabilir

Bunu kolaylaştırmak için bir işlev.

create function IFEMPTY(s text, defaultValue text) 
returns text deterministic 
return if(s is null or s = '', defaultValue, s); 

kullanma:

SELECT IFEMPTY(field1, 'empty') as field1 
from tablename 
İlgili konular