对于想了解MySQLSELECT函数汇总当前数据的读者,本文将是一篇不可错过的文章,并且为您提供关于MySQL——获取当前数据行号、MySQL日期加减函数汇总、mysql-MySql数据统计Updat
对于想了解MySQL SELECT函数汇总当前数据的读者,本文将是一篇不可错过的文章,并且为您提供关于MySQL —— 获取当前数据行号、MySQL 日期加减函数汇总、mysql-MySql 数据统计Update Select优化、MySQL1:MySQL函数汇总的有价值信息。
本文目录一览:MySQL SELECT函数汇总当前数据
我有一个查询,返回的内容是这样的:
| ID | Val |
| 0 | 10 |
| 1 | 20 |
| 2 | 30 |
但是相反,我想要这样的东西:
| ID | Val | Sum |
| 0 | 10 | 10 |
| 1 | 20 | 30 |
| 2 | 30 | 60 |
这是在查询上做的一种方法(我正在使用MySQL)?
ks
MySQL —— 获取当前数据行号
解决方法是通过预定义用户变量来实现:
SET @rowNum = 0;
SELECT (@rowNum := @rowNum + 1) AS rowNum,id FROM recommend
MySQL 日期加减函数汇总
1. addtime()
为日期加上指定秒数
select addtime(now(),1); -- 加1秒
2. adddate()
有两种用法,第二个参数直接填数字的话是为日期加上指定天数,填interval的话是为日期加上指定的interval时间
select adddate(now(),1); -- 加1天 select adddate(now(), interval 1 day); -- 加1天 select adddate(now(), interval 1 hour); --加1小时 select adddate(now(), interval 1 minute); -- 加1分钟 select adddate(now(), interval 1 second); -- 加1秒 select adddate(now(), interval 1 microsecond); -- 加1毫秒 select adddate(now(), interval 1 week); -- 加1周 select adddate(now(), interval 1 month); -- 加1月 select adddate(now(), interval 1 quarter); -- 加1季 select adddate(now(), interval 1 year); -- 加1年
3. date_add()
为日期增加一个时间间隔,这个只能使用interval时间作为参数,用法和adddate()一致
select date_add(now(), interval 1 day); -- 加1天 select date_add(now(), interval 1 hour); -- 加1小时 select date_add(now(), interval 1 minute); -- 加1分钟 select date_add(now(), interval 1 second); -- 加1秒 select date_add(now(), interval 1 microsecond); -- 加1毫秒 select date_add(now(), interval 1 week); -- 加1周 select date_add(now(), interval 1 month); -- 加1月 select date_add(now(), interval 1 quarter); -- 加1季 select date_add(now(), interval 1 year); -- 加1年
4. subtime()
为日期减去指定秒数
select subtime(now(), 1); -- 减1秒
5. subdate()
与adddate()函数用法一致,有两种用法,第二个参数直接填数字的话是为日期减去指定天数,填interval的话是为日期减去指定的interval时间
select subdate(now(),1); -- 减1天 select subdate(now(), interval 1 day); -- 减1天 select subdate(now(), interval 1 hour); --减1小时 select subdate(now(), interval 1 minute); -- 减1分钟 select subdate(now(), interval 1 second); -- 减1秒 select subdate(now(), interval 1 microsecond); -- 减1毫秒 select subdate(now(), interval 1 week); -- 减1周 select subdate(now(), interval 1 month); -- 减1月 select subdate(now(), interval 1 quarter); -- 减1季 select subdate(now(), interval 1 year); -- 减1年
6. date_sub()
与date_add()函数用法一致,为日期减去一个时间间隔,这个只能使用interval时间作为参数
select date_sub(now(), interval 1 day); -- 减1天 select date_sub(now(), interval 1 hour); --减1小时 select date_sub(now(), interval 1 minute); -- 减1分钟 select date_sub(now(), interval 1 second); -- 减1秒 select date_sub(now(), interval 1 microsecond); -- 减1毫秒 select date_sub(now(), interval 1 week); -- 减1周 select date_sub(now(), interval 1 month); -- 减1月 select date_sub(now(), interval 1 quarter); -- 减1季 select date_sub(now(), interval 1 year); -- 减1年
推荐:《
以上就是MySQL 日期加减函数汇总的详细内容,更多请关注php中文网其它相关文章!
mysql-MySql 数据统计Update Select优化
mysqlselect优化数据update select
请教下各位大神,mysq update数据优化
遇到的问题是这样的。
表a有2个字段,ready_count,download_count
表b是统计表,有type,id
两个表的储存引擎都是myisam
需要把表b的数据count(1) group by(type)之后update到表a的那两个字段中。
我现在的SQL是这样的:
update a _t1
set
_t1.ready_count = (
SELECT count(1) FROM b _t2 WHERE _t2.tid = _t1.id and _t2.type = 1
),
_t1.download_count = (
SELECT count(1) FROM b _t2 WHERE _t2.tid = _t1.id and _t2.type = 2
),
MySQL1:MySQL函数汇总
功能强大、方便易用的函数,使用这些函数,可以极大地提高用户对于数据库的管理效率,从而更加灵活地满足不同用户的需求。本文将MysqL的函数分类并汇总,以便以后用到的时候可以随时查看。
函数
显示6位小数
radians(x)
degrees(x)
atan(x)
函数
内容,任意一个为NULL则返回值为NULL
一个x
(8)LTRIM(s)、RTRIM(s)
前者返回字符串s,其左边所有空格被删除;后者返回字符串s,其右边所有空格被删除
(9)TRIM(s)
返回字符串s删除了两边空格之后的字符串
(10)TRIM(s1 FROM s)
删除字符串s两端所有子字符串s1,未指定s1的情况下则默认删除空格
(11)REPEAT(s,n)
返回一个由重复字符串s组成的字符串,字符串s的数目等于n
(12)SPACE(n)
返回一个由n个空格组成的字符串
(13)REPLACE(s,s2)
返回一个字符串,用字符串s2替代字符串s中所有的字符串s1
(14)STRCMP(s1,s2)
若s1和s2中所有的字符串都相同,则返回0;根据当前分类次序,第一个参数小于第二个则返回-1,其他情况返回1
(15)SUBSTRING(s,n,len)、MID(s,len)
两个函数作用相同,从字符串s中返回一个第n个字符开始、长度为len的字符串
(16)LOCATE(str1,str)、POSITION(str1 IN str)、INSTR(str,str1)
三个函数作用相同,返回子字符串str1在字符串str中的开始位置(从第几个字符开始)
(17)REVERSE(s)
将字符串s反转
(18)ELT(N,str1,str2,str3,str4,...)
返回第N个字符串
时间函数
函数用在字符串或是数字语境中而定
Now()、SYSDATE()
函数用在字符串或数字语境中而定
一个格林尼治标准时间1970-01-01 00:00:00到指定时间的秒数
函数,把UNIX时间戳转换为普通格式的时间
函数用在字符串还是数字语境中
名称
英文名称,如Sunday、Monday等;DAYOFWEEK(d)返回的对应一周中的索引,1表示周日、2表示周一;WEEKDAY(d)表示d对应的工作日索引,0表示周一,1表示周二
计算日期d是一年中的第几周,后者计算某一天位于一年中的第几周
YEAR(date)返回指定日期对应的年份,范围是1970~2069;QUARTER(date)返回date对应一年中的季度,范围是1~4;MINUTE(time)返回time对应的分钟数,范围是0~59;SECOND(time)返回制定时间的秒值
(11)EXTRACE(type FROM date)
从日期中提取一部分,type可以是YEAR、YEAR_MONTH、DAY_HOUR、DAY_MICROSECOND、DAY_MINUTE、DAY_SECOND
(12)TIME_TO_SEC(time)
返回以转换为秒的time参数,转换公式为"3600*小时 + 60*分钟 + 秒"
(13)SEC_TO_TIME()
和TIME_TO_SEC(time)互为反函数,将秒值转换为时间格式
(14)DATE_ADD(date,INTERVAL expr type)、ADD_DATE(date,INTERVAL expr type)
返回将起始时间加上expr type之后的时间,比如DATE_ADD('2010-12-31 23:59:59',INTERVAL 1 SECOND)表示的就是把第一个时间加1秒
(15)DATE_SUB(date,INTERVAL expr type)、SUBDATE(date,INTERVAL expr type)
返回将起始时间减去expr type之后的时间
(16)ADDTIME(date,expr)、SUBTIME(date,expr)
前者进行date的时间加操作,后者进行date的时间减操作
函数
函数
MysqL版本号
用户的连接数
stem_USER()、SESSION_USER()
用户名和主机的组合,一般这几个函数的返回值是相同的
函数
MysqL服务器的鉴定系统中使用
一个MD5 128比特校验和,改值以32位十六进制数字的二进制字符串形式返回
函数返回的字符串
函数
n位,结果以字符串形式返回
间的转换,返回值为数值N的字符串表示,由from_base进制转换为to_base进制
一个代表该地址数值的整数,地址可以使4或8比特
一个数字网络地址(4或8比特),返回作为字符串的该地址的点地址表示
一个作用是用它在MysqL客户端内部报告语句执行的时间
我们今天的关于MySQL SELECT函数汇总当前数据的分享就到这里,谢谢您的阅读,如果想了解更多关于MySQL —— 获取当前数据行号、MySQL 日期加减函数汇总、mysql-MySql 数据统计Update Select优化、MySQL1:MySQL函数汇总的相关信息,可以在本站进行搜索。
本文标签: