MySQL NULL 值处理实例教程
技术百科
零下一度
发布时间:2017-05-15
浏览: 次 MySQL NULL值处理
我们已经知道mysql使用sql select命令和where子句来读取数据表中的数据,但是当提供的查询条件字段为null时,该命令可能就无法正常工作。
为了处理这种情况时,MySQL提供了三大运算符:
IS NULL:当列的值为NULL,此运算符返回true。
IS NOT NULL:当列的值不为NULL,运算符返回true。
: 比较操作符(不同于=运算符),当比较的的两个值为NULL时返回真。
关于NULL的条件比较运算是比较特殊的。你不能使用= NULL或!= NULL在列中查找NULL值。
在MySQL中,NULL值与任何其它值的比较(即使是NULL)永远返回false,即NULL = NULL返回false。
MySQL中处理NULL使用IS NULL和IS NOT NULL运算符。
在命令提示符中使用NULL值
以下实例中假设数据库指南中的表tcount_tbl包含两列tutorial_author和tutorial_count,tutorial_count中设置插入NULL值。
尝试以下实例:
root @ host#mysql -u root -p password;
输入密码:*******
mysql> use TUTORIALS;数据库已更改mysql> create table tcount_tbl
- >(
- > tutorial_author varchar(40)NOT NULL,
- > tutorial_count INT
- >);
查询OK,0行受影响(0.05秒)
mysql> INSERT INTO tcount_tbl
- >(tutorial_author,tutorial_count)值('mahran',20);
mysql> INSERT INTO tcount_tbl
- >(tutorial_author,tutorial_count)values('mahnaz',NULL);
mysql> INSERT INTO tcount_tbl
- >(tutorial_author,tutorial_count)值('Jen',NULL);
mysql> INSERT INTO tcount_tbl
- >(tutorial_author,tutorial_count)值('Gill',20);
mysql> select * from tcount_tbl;
+ ----------------- + ---------------- +
| tutorial_author | tutorial_count |
+ ----------------- + ---------------- +
| 马赫兰 20 |
| mahnaz | NULL |
| 仁| NULL |
| 鳃| 20 |
+ ----------------- + ---------------- +
4行(0.00秒)
MySQL的>以下实例中你可以看到=和!=运算符是不起作用的
mysql> SELECT * FROM tcount_tbl WHERE tutorial_count = NULL; 空置(0.00秒) mysql> SELECT * FROM tcount_tbl WHERE tutorial_count!= NULL; 空置(0.01秒)
查询数据表中tutorial_count列是否为NULL,必须使用IS NULL和IS NOT NULL,如下实例:
mysql> SELECT * FROM tcount_tbl
- > WHERE tutorial_count IS NULL;
+ ----------------- + ---------------- +
| tutorial_author | tutorial_count |
+ ----------------- + ---------------- +
| mahnaz | NULL |
| 仁| NULL |
+ ----------------- + ---------------- +
2行(0.00秒)
mysql> select * from tcount_tbl
- > WHERE tutorial_count is NOT NULL;
+ ----------------- + ---------------- +
| tutorial_author | tutorial_count |
+ ----------------- + ---------------- +
| 马赫兰 20 |
| 鳃| 20 |
+ ----------------- + ---------------- +
2行(0.00秒)使用PHP脚本处理NULL值
PHP脚本中你可以在if ... else语句来处理变量是否为空,并生成相应的条件语句。
以下实例中PHP设置了$ tutorial_count变量,然后使用该变量与数据表中的tutorial_count字段进行比较:
<?PHP
$ dbhost ='localhost:3036';
$ dbuser ='root';
$ dbpass ='rootpassword';
$ conn = mysql_connect($ dbhost,$ dbuser,$ dbpass);
if(!$ conn)
{
die('无法连接:'。mysql_error());
}
if(isset($
tutorial_count))
{
$ sql ='SELECT tutorial_author,tutorial_count
FROM tcount_tbl
WHERE tutorial_count = $ tutorial_count';
}
其他
{
$ sql ='SELECT tutorial_author,tutorial_count
FROM tcount_tbl
WHERE tutorial_count IS $ tutorial_count';
}
mysql_select_db( '教程');
$ retval = mysql_query($ sql,$ conn);
如果(!$ retval)
{
die('无法获取数据:'mysql_error());
}
while($ row = mysql_fetch_array($ retval,MYSQL_ASSOC))
{
echo“作者:{$ row ['tutorial_author']}
”。
“Count:{$ row ['tutorial_count']}
”。
“--------------------------------结果”;
}
echo“成功获取数据\ n”;
mysql_close($康恩);
?>【相关推荐】
1. 特别推荐:“php程序员工具箱”V0.1版本下载
2. 免费mysql*教程
3. 数据库设计那些事
# 即使是
# 这种情况
# 你不
# 三大
# 可以看到
# 值为
# 运算符
# 子句
# 马赫
# 中你
相关栏目:
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
AI推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
SEO优化<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
技术百科<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
谷歌推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
百度推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
网络营销<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
案例网站<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
精选文章<?muma echo $count; ?>
】
相关推荐
- 如何使用Golang table-driven基准
- Windows10如何更改鼠标灵敏度_Win10鼠
- Win11怎么关闭开机声音_Win11系统启动提示
- Windows10如何更改盘符名称_Win10重命
- C++如何使用std::transform批量处理
- Win11怎么设置环境变量_Win11配置Path
- Win10电脑怎么设置IP地址_Windows10
- Win11怎么更改账户头像_Windows 11自
- 如何用列表一次性对 DataFrame 的指定列应
- c++如何实现多态性_c++ 虚函数表原理与动态绑
- Win10怎样清理C盘浏览器缓存_Win10清理浏
- php错误怎么开启_display_errors与
- php修改数据怎么改富文本_update更新htm
- 如何有效拦截拼接式恶意域名的垃圾信息
- c++的位运算怎么用 与、或、异或、移位操作详解【
- c++ std::future和std::prom
- C++中的constexpr和const有什么区别
- LINUX下如何配置VLAN虚拟局域网_在LINU
- Win11怎么连接蓝牙耳机_Win11蓝牙设备配对
- c++中的可变参数模板(variadic temp
- 如何将文本文件中的竖排字符串转换为横排字符串
- Golang如何测试HTTP中间件_Golang
- Python 中将 ISO 8601 时间戳转换为
- Windows10怎么用“讲述人”读屏辅助 Win
- Windows电脑如何截屏?(四种快捷方法)
- Win10如何备份驱动程序_Win10驱动备份步骤
- Win10怎么更改用户名 Win10修改账户名称操
- Linux怎么实现内网穿透_Linux安装Frp客
- Win11怎么关闭用户账户控制UAC_Window
- Windows 11无法安全删除U盘提示设备正在使
- Python大型项目拆分策略_模块化解析【教程】
- Go语言中正确反序列化多个同级XML元素为结构体切
- php删除数据怎么清空表_truncate与del
- Golang如何避免指针逃逸_Golang逃逸分析
- php订单日志怎么记录发货_php记录订单发货操作
- c++中的CRTP是什么 c++奇异递归模板模式【
- 怎么将XML数据可视化 D3.js加载XML
- Python抽象类与接口设计_规范说明【指导】
- Win11怎么设置ipv4地址_Windows 1
- 如何在Golang中处理二进制数据_Golang
- Win11无法安装软件怎么办_Win11解除应用安
- Go 语言标准库为何不提供泛型 Contains
- Windows11如何设置专注助手_Windows
- php怎么下载安装后无法解析php文件_服务器配置
- Win11如何设置计划任务 Win11定时执行程序
- 如何解决Windows时间不准的问题?(自动同步设
- VSC怎样用终端运行PHP_命令行执行脚本的步骤【
- 如何使用Golang进行HTTP服务性能测试_测量
- PHP的Workerman对架构扩展有啥帮助_应用
- Mac的访达(Finder)怎么用_Mac文件管理

tutorial_count))
{
$ sql ='SELECT tutorial_author,tutorial_count
FROM tcount_tbl
WHERE tutorial_count = $ tutorial_count';
}
其他
{
$ sql ='SELECT tutorial_author,tutorial_count
FROM tcount_tbl
WHERE tutorial_count IS $ tutorial_count';
}
mysql_select_db( '教程');
$ retval = mysql_query($ sql,$ conn);
如果(!$ retval)
{
die('无法获取数据:'mysql_error());
}
while($ row = mysql_fetch_array($ retval,MYSQL_ASSOC))
{
echo“作者:{$ row ['tutorial_author']}
QQ客服