总的来说MySQl趣味性已经超出我想象范围(它甚至可以当计算器来使用),现在我就这半个月来的亲身体验来个总结,希望能与大家共同分享。
趣点一、 MySQL在内部把DECIMAL数据类型存储为字符串。呵!竟然把数值类型存储为字符串(当然MySQL这样做是因为它想以最精确的方式来为大家提供服务)。
趣点二、 CHAR类型与VARCHAR类型之间的差别。它们之间的差别仅在处理括号中参数的方式,CHAR把这个大小视为值的准确大小(用空格填补比较短的信息,所以达到了这个效果);而VARCHAR把它视为数据大小的最大值,并且只使用了存储字符串实际上需要的字节数)。
趣点三、 MySQL不放过任何一个不合法的数据。甚至于你想把 '2001-02-29' 插入一个DATA类型的字段中都会被拒绝。
趣点四、“<>”运算符。可能大家在没有接触MySQL之前是绝对想象不到,它竟然是MySQL中的不等号,相当有意思且非常有个性的不等号。
趣点五、 SELECT ’hero ' = 'hero';的结果是1。而SELECT ’ hero' = 'hero';的返回结果却是0。 这是因为MySQL会忽略字符串后面的空格,而前面的空格被保留。(注意SQL语句中空格的位置)
趣点六、 SELECT 6=NULL;与SELECT 88 <> NULL;对应的结果都NULL。这是因为通常包括一个NULL值的比较运算往往产生一个NULL。
趣点七、“<=>”运算符。它又是一个比较有个性的运算符,MySQL手册称之为“NULL安全的”等于运算符。
趣点八、 SELECT ” “ IS NULL;的结果竟然是0。MySQL对空值和NULL值进行了清晰的区分。