继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

周末加班的惆怅,mySql笔记

一飞同学
关注TA
已关注
手记 40
粉丝 82
获赞 1103

1.数据所占字节与其数据类型相关,与显示位数无关。int(4)与int(11)所占字节一样。

2.浮点型数字加减计算精度会丢失。整数永远可以用二进制精度表示,小数不一定。由于机器存储位有限,除不尽的部分,就被丢弃了。

3.一些函数
length('abcd中国'); --8

char_length('abcd中国');--6 字符个数

rand();0-1随机小数

round(4.5);5 四舍五入

date_add(now(),interval 10 day);--10天后日期

date_add(now(),interval -10 day);--10天前日期

date_add(now(),interval -10 week);--10周前日期

date_add(now(),INTERVAL 10 minute);返回10分钟后

datediff(‘2012-02-28’,‘2012-02-20’);--8 两个日期之间相差天数

TIMESTAMPDIFF(HOUR,‘2013-3-28 14:30:30’,NOW()); -- 返回两个对象之间小时差

select DATE_FORMAT(NOW(),'Y年%m月%d日');

DATE_FORMAT(NOW(),'%Y年%m月%d日 %H:%i:%s'); 2013年03月28日 11:10:10

FROM_UNIXTIME(1376555100) ; 将时间戳转换为 2013-08-15 16:25:00

UNIX_TIMESTAMP('1982-12-03 10:20:30'); -- 407730030

UNIX_TIMESTAMP(); -- 1387960432

FROM_UNIXTIME(1387960432,'%Y-%m-%d %T');-- 2013-12-25 16:33:52

FROM_UNIXTIME(407730030,'%Y-%m-%d %H:%i:%s');-- 1982-12-03 10:20:30

concat(2,2,‘a’); -- 结果是22a 字符连接函数

concat_ws(‘,’,2,3,4,5); -- 结果是2,3,4,5字符串,根据指定的分隔符

REPEAT(‘abc’,2); -- 产生abcabc 字符串

SPACE(60); -- 产生60个空格的字符串

upper(‘a’)//A 转换大写

lower(‘A’)//a 转换大写

left(‘中国人’,2) //中国,左侧取两个字符

right(str,length) 这三个截取函数对中文支持较好,无需特殊处理

mid(‘中国人’,2,2) //国人计算位置从1开始

ifnull(null,'ok'); 返回ok

ifnull('abc','ok');返回abc

if(1=2,1,2);返回2

if(1=1,1,2);返回1 这两个函数可以嵌套使用

sha1('abc');返回40位密文字符串

md5('abc'); 返回32位密文字符串

password('abc'); 返回41位密文字符串

uuid();返回36位唯一随机字符串

format(1000,2); 格式化数字 1,000.00

INET_ATON(‘119.75.218.77’) ;ip转换为数字 2001459789 address-->number

INET_NTOA(2001459789);数字转换为ip ip转换为数字后,其划段和统计比较方便

4.update member set pid=0 where pid in (select id from member where pid=1)

不允许update的子查询里有被查询的那个表 也就是 update 表a 的时候,不能在后面select from a

打开App,阅读手记
17人推荐
发表评论
随时随地看视频慕课网APP

热门评论

弱弱地请教一下,不用多条update语句的话,批量修改的语句怎么写

查看全部评论