MySQL数据库

库:

 

Show databases;              //查看所有数据库

 

create database name         //创建数据库

default character set utf8;       //创建本数据库指定的字符集

 

show create database name;     //查看单个数据库

 

drop database name;           //删除数据库

 

alter database name            //修改数据库

default character set utf8;        //修改数据库的字符集为utf8

 

表:

 

use 数据库名              //创建表之前先选择一个数据库

 

show tables ;               //查看所有表

 

create table  name(         //创建表

 

);

 

desc  name ;                //查看表结构

 

drop table name;                //删除表

 

修改表:

alter table 表名add column 属性 类型 ;       //添加字段

alter table 表名drop column 属性;            //删除字段

alter table 表名 modify column属性 类型 ;    //修改字段类型

alter table 表名 change column 原字段名 改后字段名 类型;//修改字段名称

alter table 原表名 rename to 改后表名

 

 

 

修改数据:

Insert into 表名 values()                 //添加数据

Update 表名 set  xx=xx    where id=1    //修改数据  ID为1的

Delete from 表名 where id=1              //条件删除数据

Delete from 表名                        //删除全部数据

truncate 表名                      //全表删除  可以清空约束

 

 

select*from 表名                        //查询所有列

select   xx    from                      //指定列查询

select id,NAME,(servlet+jsp) AS '总成绩' from student;  //合并列

select DISTINCT(XX) from表名;            //去除重复

 

 

条件查询:

逻辑条件: and(与)     or(或)

SELECT * FROM 表名 WHERE id=2 AND NAME='李四';     -- 交集

SELECT * FROM 表名 WHERE id=2 OR NAME='张三';       -- 并集

 

 

判定空值

INSERT INTO表名(uid,xname,aa) VALUES(4,'','');

SELECT*FROM表名WHERE  cc  IS NULL;  判断为空

SELECT*FROM表名WHERE  cc  IS NOT NULL;  判断不为空

SELECT*FROM表名WHERE  cc  ='';  判断为空值

 

模糊查询

SELECT*FROM表名WHERE xname LIKE'___';  一个_代表一位数

SELECT*FROM表名WHERE xname LIKE'小%';

WHERE xx BETWEEN 1000 AND 5000  取范围内

 

 

 

聚合函数

SELECT SUM(cc) FROM 表名;  总和

SELECT AVG(cc) FROM表名; 平均值

SELECT MAX(cc) FROM表名;  最大值

SELECT MIN(cc) FROM表名;  最小值

SELECT COUNT(cc) FROM表名; 有效数字

YEAR()                  取年份

SYSDATE()  / NOW()      获取当前时间

SELECT deptno,COUNT(*) FROM 表名 GROUP BY deptno;//分组

Having   聚合后筛选条件

 

 

分页查询

SELECT*FROM表名LIMIT 0,2  从0开始显示两条, 前面起始行 后面显示条数

 

排序

SELECT*FROM表名ORDER BY uid ASC; 正序   默认正序

SELECT*FROM表名ORDER BY uid DESC; 到序

 

默认值约束

DEFAULT'xx '

 

非空约束

NOT NULL,  非空

唯一约束

UNIQUE

 

主键    非空+唯一

PRIMARY KEY

 

自增长

AUTO_INCREMENT

 

零填充

ZEROFILL

 

外键

did INT,-- 定义外键类型

CONSTRAINT 名FOREIGN KEY(did)--

REFERENCES 主表名(did)

 

SELECT*FROM 主表名 JOIN 副表名;-- 交叉连接  无脑硬连

SELECT*FROM 主表名 JOIN 副表面 ON 主表.did=副表.did;-- 内连接

 

子查询 :

In    等于任何一个

Any  比较 大于或小于任何一个

All   比较 全部

 

联合查询

联合查询的关键字是: union

基本含义

联合查询就是将两个select语句的查询结果“层叠”到一起成为一个“大结果”。

两个查询结果的能够进行“联合”的先觉条件是:结果字段数相等。

 

查询中if 判断

select IF(asd='0',true,false) as asd from biao;



case when 用法:
select u.id,u.name,u.sex,
     (case u.sex
      when 1 then '男'
      when 2 then '女'
      else '其他'
      end
     )性别
  from users u;

 

posted @ 2019-03-07 10:31  fdbnf  阅读(253)  评论(0编辑  收藏  举报