您的位置:首页 > 数据库 > MySQL

MySQL tips (日期时间操作/concat 等)

2016-01-05 18:20 567 查看

1. Query结尾要加一个分号;

2. 数据库和表

SHOW DATABASES; USE YOUR_DB;

SHOW TABLES;

SHOW COLUMNS FROM study或者DESCRIBE study; -- 显示字段信息

SHOW processlist;

3. 日期时间处理

(1) NOW()

(2) MySQL 为日期增加一个时间间隔:date_add() / adddate(), addtime()

set @dt = now();

select date_add(@dt, interval 1 day); - 加1天 = SELECT ADDDATE(NOW(), 1)

select date_add(@dt, interval 1 hour); -加1小时

select date_add(@dt, interval 1 minute); - 加1分钟

select date_add(@dt, interval 1 second); -加1秒

select date_add(@dt, interval 1 microsecond);-加1毫秒

select date_add(@dt, interval 1 week);-加1周

select date_add(@dt, interval 1 month);-加1月

select date_add(@dt, interval 1 quarter);-加1季

select date_add(@dt, interval 1 year);-加1年

(3) period_add(P,N), period_diff(P1,P2) 都是对月份进行的操作。 (YYYYMM或者YYMM)

(4) datediff(date1,date2), timediff(time1,time2)

4. 字符串操作

(1) CONCAT(Concatenate)

CONCAT拼接字符串
SELECT CONCAT('HELLO', ' WORLD') AS expr

GROUP_CONCAT可以和GROUP BY语句一起用

SELECT GROUP_CONCAT(name) AS names FROM xxx
SELECT GROUP_CONCAT(name) AS names FROM xxx
GROUP BY yy
>将符合条件的同一列中的不同行数据拼接, 以逗号分隔
>names返回的是blob类型, 在java中需要特殊处理, 否则出错:
No Dialect mapping for JDBC type:
或者将其转化为varchar类型
SELECT TRIM(GROUP_CONCAT(name)) AS names FROM
xxx

5. SQLyog

MySQL GUI 桌面工具,可以在服务器的帮助下,连接上MySQL,进行界面化的操作。

6. 建表语句经典例子

create table eagle_metric_dmeta
(

tutorial_id INT NOT NULL AUTO_INCREMENT,                     -- 自增长

`uuid` varchar(254) COLLATE utf8_bin NOT NULL,               -- 关键字做字段名,要加 ``  ;  utf8 声明
`timestamp` bigint(20) DEFAULT NULL,
drillDownPaths mediumtext,
aggFunctions mediumtext,
defaultDownSamplingFunction mediumtext,
defaultAggregateFunction mediumtext,
resolutions mediumtext,
downSamplingFunctions mediumtext,
storeType mediumtext,
displayName mediumtext,
PRIMARY KEY (`uuid`),                                      -- 主键
UNIQUE KEY `uuid_UNIQUE` (`uuid`)                          -- 唯一性约束
)ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;      -- utf8 声明


7. 查看表结构以及表数据等;

1) show tables like ’%table%‘; -- 列出匹配的表

2) limit 10\G 可以逐条展示;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: