MySQL5开发备忘(更新中...)
-- ----------------查看MySQL系统参数-------------
-- 查看版本
SELECT @@version
-- 查看系统变量-系统日期
SELECT CURRENT_DATE;
-- 查看系统变量-系统时间
SELECT CURRENT_TIME;
-- 查看系统变量-系统时间戳
SELECT CURRENT_TIMESTAMP;
-- 查看系统变量-当前SQL用户
SELECT CURRENT_USER;
-- ----------------查看MySQL常量-------------
-- 查看字符串型常量
SELECT 'Hello MySQL';
-- 查看数值表达式常量
SELECT 2*8;
-- 查看布尔常量TRUE/FALSE,常量值为1和0
SELECT TRUE;
SELECT FALSE;
-- ----------------查看MySQL用户变量-------------
-- 查看用户变量,变量值来自表达式,类型随表达式改变
CREATE DEFINER =
'root'@'%' PROCEDURE `TEST`(IN IN_START BIGINT, IN IN_SIZE BIGINT)
NOT DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT ''
BEGIN
SET @START=IN_START;
SET @SIZE=IN_SIZE;
SELECT @START, @SIZE;
END;
-- ----------------MySQL常用函数-------------
-- 空处理函数:若COLUMN_NAME为NULL,则返回0,否则返回COLUMN_NAME。
SELECT COALESCE(COLUMN_NAME,0)
-- 转大写函数
SELECT UCASE('1asdf是');
-- 转小写函数
SELECT LCASE('1asdf是');
-- 日期函数
SELECT YEAR(CURRENT_TIMESTAMP);
SELECT DATE(CURRENT_TIMESTAMP);
SELECT TIME(CURRENT_TIMESTAMP);
SELECT CURRENT_TIMESTAMP;
SELECT CURDATE();
SELECT CURTIME();
-- 字符串转日期函数
SELECT DATE('2007-08-28 11:37:56');
SELECT TIMESTAMP('2007-08-28');
SELECT YEAR('2007-08-28 11:37:56');
SELECT DATE('2007-08-28');
SELECT TIME('11:37:56');
--
-- 类型型换函数,注意:不能转换为VARCHAR。
SELECT CAST(23424 AS CHAR(20));
SELECT CAST('2000-01-01' AS DATE);
-- 获取星期英文名
SELECT DAYNAME(CURRENT_TIMESTAMP);
-- 获取月份英文名
SELECT MONTHNAME(CURRENT_TIMESTAMP);
-- 获取给定时间是一年中的第几天
SELECT DAYOFYEAR(CURRENT_TIMESTAMP);
-- 日期加天
SELECT ADDDATE(CURRENT_DATE,15);
SELECT ADDDATE(CURRENT_TIMESTAMP,15);
-- 日期减天
SELECT DATE_SUB(CURDATE(),INTERVAL 1 DAY)
-- 日期相差天数
SELECT DATEDIFF(TIMESTAMP('2007-08-28'),TIMESTAMP('2008-11-1'));
-- 日期加时间
SELECT ADDTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002');
SELECT ADDTIME('01:00:00.999999', '02:00:00.999998');
-- 返回指定的日期格式
SELECT DATE_FORMAT('1997-10-04 22:23:00', '%H:%i:%s');
-- 字符串连接函数
SELECT CONCAT('Hello',' World!');
-- 去除首尾空格
SELECT TRIM(' hello ');
-- 求余函数
SELECT MOD(30,7);
-- 四舍五入函数
SELECT ROUND(5.235,2);
SELECT ROUND(5.2,0)
SELECT ROUND(5.2)
-- 数值截取、归零函数TRUNCATE(X,D) ,返回保留小数点后D位的数字X。若D 的值为 0, 则结果不带有小数点或不带有小数部分。可以将D设为负数,若要截去(归零) X小数点左起第D位开始后面所有低位的值。
SELECT TRUNCATE(234.2342,0);
返回:234
SELECT TRUNCATE('234.2342',0);
返回:234
SELECT TRUNCATE(234.2342,2);
返回:234.23
SELECT TRUNCATE(234.2342,-1);
返回:230
-- 平方根函数
SELECT SQRT(2);
-- 查看ASCII的值,假如为空字符串,则返回值为 0
SELECT ASCII('A')
-- 查询指定时间段的记录
SELECT *
FROM genreparam
WHERE DATE_FORMAT(update_time, '%Y-%c-%e %T') BETWEEN '1900-2-1 00:00:00' AND '2010-2-5 00:00:00'