Artikulo Direktoryo
database sa MySQLGiunsa pagdumala ang mga pangutana alang sa mga dili-null nga kantidad?MySQL Ang pahayag dili null.
Pagdumala sa Null Value sa MySQL
Nahibal-an na nato nga ang MySQL naggamit sa SQL SELECT command ug WHERE clause aron magbasa sa datos gikan sa usa ka table, apan kini nga command mahimong dili molihok sa husto kung ang gihatag nga query condition field kay NULL.
Aron masulbad kini nga sitwasyon, ang MySQL naghatag og tulo ka pangunang operator:
- WALAY BAYAD:Kini nga operator mobalik og true kung ang bili sa kolum kay NULL.
- DILI NULL:Ang operator mobalik og true kon ang bili sa kolum dili NULL.
- <=>: Ang comparison operator (lahi sa = operator) mobalik og true kon ang duha ka value nga gitandi kay NULL.
Espesyal ang mga operasyon sa pagtandi sa kondisyon nga naglambigit sa NULL. Dili nimo magamit ang = NULL o ! = NULL aron mangita og mga NULL nga kantidad sa usa ka kolum.
Sa MySQL, ang pagtandi sa usa ka NULL nga kantidad sa bisan unsang ubang kantidad (bisan ang NULL) kanunay nga mobalik og false; kana mao, ang NULL = NULL mobalik og false.
Sa MySQL, ang NULL gidumala gamit ang IS NULL ug IS NOT NULL operators.
Paggamit sa NULL sa command prompt
Sa mosunod nga pananglitan, ang lamesa nga chenweiliang_test_tbl sa database nga chenweiliang adunay duha ka kolum nga chenweiliang_author ug chenweiliang_count, ug ang mga NULL nga kantidad gisulod sa chenweiliang_count.
pananglitan
Sulayi ang mosunod nga mga pananglitan:
Paghimo og data table nga chenweiliang_test_tbl
root @ host #mysql -u root -p password; 输入密码:******* mysql > 使用chenweiliang ; 数据库改变了mysql > create table chenweiliang_test_tbl - > ( - > chenweiliang_author varchar (40 )NOT NULL , - > chenweiliang_count INT - > ); 查询OK ,0 行受影响(0.05 秒)mysql > INSERT INTO chenweiliang_test_tbl (chenweiliang_author ,chenweiliang_count )values (' chenweiliang ' ,20 ); mysql > INSERT INTO chenweiliang_test_tbl (chenweiliang_author ,chenweiliang_count )values (' 陈沩亮博客' ,NULL ); mysql > INSERT INTO chenweiliang_test_tbl (chenweiliang_author ,chenweiliang_count )values ( ' Google ' ,NULL ); mysql > INSERT INTO chenweiliang_test_tbl (chenweiliang_author ,chenweiliang_count )values (' FK ' ,20 ); mysql > SELECT * from chenweiliang_test_tbl ; + --------------- + -------------- + | chenweiliang_author | chenweiliang_count | + --------------- + -------------- + | chenweiliang | 20 | | 陈沩亮博客| NULL | | Google | NULL | | FK | 20 | + --------------- + -------------- + 4 行中集合(0.01 秒)
Sa mosunod nga mga pananglitan, imong makita nga ang mga operator nga = ug ! = dili mogana:
mysql > SELECT * FROM chenweiliang_test_tbl WHERE chenweiliang_count = NULL ; 空集(0.00 秒)mysql > SELECT * FROM chenweiliang_test_tbl WHERE chenweiliang_count != NULL ; 空集(0.01 秒)
Para masusi kon ang kolum nga chenweiliang_test_tbl sa data table kay NULL, kinahanglan nimong gamiton...WALAY BAYADugDILI NULLPananglitan:
mysql > SELECT * FROM chenweiliang_test_tbl WHERE chenweiliang_count IS NULL ; + --------------- + -------------- + | chenweiliang_author | chenweiliang_count | + --------------- + -------------- + | 陈沩亮博客| NULL | | Google | NULL | + --------------- + -------------- + 2 行中的组(0.01 秒)的MySQL > SELECT * 从chenweiliang_test_tbl WHERE chenweiliang_count IS NOT 空值 ; + --------------- + -------------- + | chenweiliang_author | chenweiliang_count | + --------------- + -------------- + | chenweiliang | 20 | | FK | 20 | + --------------- + -------------- + 2 行中的组(0.01 秒)
Pagdumala sa mga NULL nga kantidad gamit ang mga script sa PHP
Sa mga PHP script, magamit nimo ang mga if ... else statement aron ma-handle kung ang usa ka variable walay sulod ug maka-generate og katugbang nga mga conditional statement.
Sa mosunod nga ehemplo, ang PHP nagtakda sa variable nga $chenweiliang_count ug dayon gigamit kini nga variable aron itandi sa chenweiliang_count field sa data table:
Pagsulay sa MySQL ORDER BY:
<?
php $ dbhost = ' localhost:3306 ' ; // mysql服务器主机地址
$ dbuser = ' root ' ; // mysql用户名
$ dbpass = ' 123456 ' ; // mysql用户名密码
$ conn = mysqli_connect ($ dbhost ,$ dbuser ,$ dbpass );
如果(!$ conn ){ die (' 连接失败:' 。mysqli_error ($ conn ));
} // 设置编码,防止中文乱码
mysqli_query ($ conn ,“ set names utf8 ” );
if (isset ($ chenweiliang_count )){ $ sql = “ SELECT chenweiliang_author,chenweiliang_count FROM chenweiliang_test_tbl WHER chenweiliang_count = $ chenweiliang_count ” ;
} else { $ sql = “ SELECT chenweiliang_author,chenweiliang_count FROM chenweiliang_test_tbl WHER chenweiliang_count IS NULL ” ;
} mysqli_select_db ($ conn ,'
chenweiliang ' );
$ retval = mysqli_query ($ conn ,$ sql );
if (!$ retval ){ die (' 无法读取数据:' 。mysqli_error ($ conn ));
} echo ' <h2>陈沩亮博客IS NULL测试<h2> ' ;
echo ' <table border =“1”> <tr> <td>作者</ td> <td>登陆次数</ td> </ tr> ' ;
$ retval ,MYSQL_ASSOC )){ echo “ <tr> ” 。
“ <td> {$ row ['chenweiliang_author']} </ td> ” 。
“ <td> {$ row ['chenweiliang_count']} </ td> ” 。
“ </ tr> ” ;
} echo ' </ table> ' ;
mysqli_close ($ conn );
?>
Paglaum Chen Weiliang Blog ( https://www.chenweiliang.com/ Ang artikulong "Unsaon pagdumala ang mga pangutana nga dili null value sa MySQL database? MySQL IS NOT NULL SELECT statement" nga gipaambit dinhi basin makatabang kanimo.
Welcome sa pagpaambit sa link niini nga artikulo:https://www.chenweiliang.com/cwl-491.html
