码迷,mamicode.com
首页 > 数据库 > 详细

mysql

时间:2021-06-10 18:03:00      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:har   开始   函数   值类型   val   null   tran   rda   _for   

创建数据库:mysql> create database test default character set utf8;

查看数据库:mysql> show databases;

查看数据库编码:mysql> select schema_name,default_character_set_name  from information_schema.schemata where schema_name =‘test‘;

删除数据库:mysql>drop database test;

选择数据库:mysql> use bjsxt;

数值类型

技术图片

 

浮点型:

技术图片

 

字符串类型:

技术图片

 

日期类型:

技术图片

 

 

创建表:mysql> create table employees(employees_id int,last_name varchar(30),salary float(8,2));

修改表名:mysql> alter table employees rename emp;

修改列名:mysql>alter table emp change column last_name name varchar(30);

修改类型:mysql> alter table emp modify name varchar(40);

添加新列:mysql> alter table emp add column commission_pct float(4,2);

删除列:mysql> alter table emp drop column commission_pct;

创建表时指定约束:

实例:创建 departments 表包含 department_id 该列为主键且自动增长,department_name 列不允许重复,location_id 列不允含有空值。

mysql> create table departments(department_id int primary key auto_increment,department_name varchar(30) unique,location_id int not null);

实例2:创建 employees 表包含 employees_id 该列为主键且自动增长,last_name 列不允许含有空值,email 列不允许有重复不允许含有空值,dept_id 为外键参照 departments 表的主键。

mysql> create table employees(employee_id int primary key auto_increment,last_name varchar(30) not null,email varchar(40) not null unique,dept_id int,constraint emp_fk foreign key(dept_id)references departments(department_id));

添加主键约束:ALTER TABLE 表名 ADD PRIMARY KEY(列名)  

修改为主键自动增长:mysql> alter table emp modify employees_id int auto_increment;

删除主键约束:mysql> alter table emp drop primary key;  先去除自动增长,再删除主键约束

修改为非空约束:mysql> alter table emp modify salary int not null;

删除非空约束:mysql> alter table emp modify salary float(8,2) null;

添加唯一性约束:mysql> alter table emp add constraint emp_uk unique(name);

 

 删除唯一性约束:mysql> alter table emp drop key emp_uk;

添加外键约束:mysql> alter table emp add constraint e_fk foreign key(dept_id)references departements(department_id);

删除外键约束:mysql> alter table emp drop foreign key e_fk;

删除外键索引:mysql> alter table emp drop index e_fk;

添加数据:mysql> insert into departments(department_name,location_id)value("market",1);

完全插入: mysql> insert into departments values(default,"development",2);  自动增长可以用null,default,0占位

添加默认值:mysql> create table emp3(emp_id int primary key auto_increment,name varchar(30),adress varchar(50) default"unknow");

修改默认值:mysql> alter table emp3 add column job_id int default 0;

更新数据:mysql> update emp3 e set e.adress="BeiJing" where emp_id=1;

子查询更新:mysql> update emp3 e,(select adress from emp3 where emp_id =1)t set e.adress=t.adress where e.emp_id=2;

删除数据:mysql> delete from emp3 where emp_id=1;

清空数据:mysql> truncate table emp3;

手动提交事务:mysql> start transaction;   commit:

mysql连接符:mysql> select concat(employee_id,‘#‘,last_name,‘#‘,email,‘#‘,salary,‘#‘,commission_pct,‘#‘) from employees;

mysql去除重复:mysql> select distinct dept_id from employees;

 

字符处理:

CONCAT(str1,str2,...)将 str1、str2 等字符串连接起来
SUBSTR(str,pos,len)从 str 的第 pos 位(范围:1~str.length)开始,截取长度为 len的字符串
LENGTH(str)获取 str 的长度
INSTR(str,substr)获取 substr 在 str 中的位置
LPAD(str,len,padstr)/RPAD(str,len,padstr)
TRIM(str)从 str 中删除开头和结尾的空格(不会处理字符串中间含有的空格)
LTRIM(str)从 str 中删除左侧开头的空格
RTRIM(str)从 str 中删除右侧结尾的空格
REPLACE(str,from_str,to_str)将 str 中的 from_str 替换为 to_str(会替换掉所有符合from_str 的字符串)
 
数字函数
ROUND(arg1,arg2):四舍五入指定小数的值。
ROUND(arg1):四舍五入保留整数。
TRUNC(arg1,arg2):截断指定小数的值,不做四舍五入处理。
MOD(arg1,arg2):取余。
 
4日期函数
SYSDATE()或者 NOW()返回当前系统时间,格式为 YYYY-MM-DD hh-mm-ss
CURDATE()返回系统当前日期,不返回时间
CURTIME()返回当前系统中的时间,不返回日期
DAYOFMONTH(date)计算日期 d 是本月的第几天
DAYOFWEEK(date)日期 d 今天是星期几,1 星期日,2 星期一,以此类推
DAYOFYEAR(date)返回指定年份的天数
DAYNAME(date)返回 date 日期是星期几
LAST_DAY(date)返回 date 日期当月的最后一天
 
转换函数
DATE_FORMAT(date,format)将日期转换成字符串(类似 oracle 中的 to_char())
STR_TO_DATE(str,format)将字符串转换成日期(类似 oracle 中的 to_date())
 
通用函数
IFNULL(expr1,expr2)判断 expr1 是否为 null,如果为 null,则用 expr2 来代替 null(类似 oracle 的 NVL()函数)
NULLIF(expr1,expr2)判断 expr1 和 expr2 是否相等,如果相等则返回 null,如果不相等则返回 expr1
IF(expr1,expr2,expr3)判断 expr1 是否为真(是否不为 null),如果为真,则使用 expr2替代 expr1;如果为假,则使用 expr3 替代 expr1(类似 oracle 的 NVL2()函数)
COALESCE(value,...)判断 value 的值是否为 null,如果不为 null,则返回 value;如果为 null,则判断下一个 value 是否为 null……直至出现不为 null 的 value 并返回或者返回最后一个为 null 的 value
CASE WHEN THEN ELSE END
条件函数

 

mysql

标签:har   开始   函数   值类型   val   null   tran   rda   _for   

原文地址:https://www.cnblogs.com/mashiyi/p/14869074.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!