这篇文章主要讲解了“MySQL数据库中执行SQL语句的注意要点”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL数据库中执行SQL语句的注意要点”吧!
在执行查找命令时的大小写问题
默认情况下,MySQL在执行查找时不区分字母的大小写。当你在查找时使用like a%时, 默认将返回以a或者A开头的所有列值,若要在查找时区分大小写,则需要使用collate运算符来实现,具体例子如下:
如果想让某列在查找时始终保持区分字母大小写,则需要用case sensitive或binary collation来定义列的特性。
当进行简单比较运算,如>=, >, =, <, <=, sorting, and grouping的时候,将依从字符的内在顺序值,例如‘E’, ‘e’, and ‘??’这些字符有相同的内在顺序值。
和空值NULL相关的问题
空值的概念比较容易混淆,有人认为空值NULL和空 字符是一会时,其实这样认为是错误的,举例来说,
上面两条语句有完全不同的意义和结果。第一句表示,向表中插入的记录中的某人的电话号码NULL,意思是还不知道这 条记录中的人的电话号码,而第二句向表中插入空字符,就意味着已经知道表中这条记录中的人的电话号码,这个电话号码 是,也可以确定此人没有正常的电话号码。
帮助处理空值NULL的方法,主要通过执行is null运算判断,is not null运算 判断,和IFNULL()函数运算来实现。在SQL中,任何与NULL发生运算关系的结果都不可能为真(即永远是假)。为了寻找NULL值 ,必须执行is null测试运算。
可以在MyISAM, InnoDB, BDB或MEMORY等存储类型的表列中含有空值时添加index,但该 index必须声明成not null,这样之后将不可以往该列中输入空值。
当使用load data infile语句载入数据时,空值NULL将 被替换成。使用DISTINCT, GROUP BY, 或ORDER BY时所有空值将被视为等同。像COUNT(), MIN(), SUM()等概要总结函数将忽略空值NULL。
但对一些特殊类型的列来说,比如timestamp类型和具有auto_increment属性的列:前者插入NULL是实际将插入当前时间值,向后者插入NULL时将是下个正整数序列。
感谢各位的阅读,以上就是“MySQL数据库中执行SQL语句的注意要点”的内容了,经过本文的学习后,相信大家对MySQL数据库中执行SQL语句的注意要点这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。