chenxiaodou

1.查看所有的数据库

show databases;

2.创建数据库  后面的时编码格式

create database dbName charset=\'utf8\';

3.使用/切换数据库

use dbName

4.查看正在使用的数据库

select database();

5.删除数据库

drop database dbName;  

MySQL的数据类型

    整数类型

整数类型 字节数 无符合数的取值范围 有符合数的取值范围
INTYINT 1 0~255 -128~127
SMALLINT 2 0~65535 -32768~32767
MEGIUMINT 3 0~16777215 -8388608~8388607
INT 4 0~4294967295 -2147483648~2147483647
INTEGER 4 0~4294967295 -2147483648~2147483647
BIGINT 8 0~18446744073709551615 -9223372036854775808-9223372036854775807

    浮点类型

                                      

 

  

    字符串类型

  字符串的常用类型时CHAR和VARCHAR ,下面时他们的区别

插入值 CHAR(5) 占用字节数 VARCHAR(5) 占用字节数
\'\' \'\' 五个字节 \'\' 一个字节
\'1\' \'1\' 五个字节 \'1\' 两个字节
\'123\' \'123\' 五个字节 \'123\' 四个字节
\'123 \' \'123 \' 五个字节 \'123 \' 五个字节
\'12345\' \'12345\' 五个字节 \'12345\' 六个字节

   TEXT类型是一种特殊的字符串类型。TEXT只能保存字符数据。如新闻的内容等。

   类型包括 TINYTEXT、TEXT、MEDIUMTEXT 和LONGTEXT.

      下面将从4中TEXT类型允许的长度的存储空间进行对比

类型 允许的长度 存储空间
TINYTEXT 0~255字节 值的长度+2个字节
TEXT 0~65535字节 值的长度+2个字节
MEDIUMTEXT 0~167772150字节 值的长度+3个字节
LONGTEXT 0~4294967295字节 值的长度+4个字节

    日期与时间类型

日期类型 字节数 取值范围 零值
YEAR 1 1901~2155 0000
DATE 4 1000-01-01~9999-12-31 0000:00:00
TIME 3 -838:59:59~838:59:59 00:00:00
DATETIME 8 1000-01-01 00:00:00~9999-12-31 23:59:59 0000-00-00 00:00:00
TIMESTAMP 4 19700101080001 00000000000000

    表中常见的操作

1.查看当前数据库中的所有数据表

show tables;

2.创建表

create table tablename(字段1 数据类型,字段2 数据类型 ...) [charset set 字符集 collate 校对规则]

3.查看表结构

desc tablename;

4.重命名表

alter table 表原名 rename to 新表明;

5.添加字段

  添加字段(默认添加在最后一个位置)

   alter table tablename add 字段 数据类型;

  添加字段:在表的第一个位置添加字段

  alter table tablename add 字段数据类型 first;

  添加字段: 在指定的位置添加字段

  alter table tablename add 字段 new 数据类型 after 字段old;

6.修改字段

  修改字段: 修改字段数据类型

  alter table tablename modify 字段 数据类型;

  修改字段: 修改字段到第一个位置

  alter table tablename modify 字段数据类型 first;

  修改字段:修改字段到指定位置

  alter table tablename modify 字段数据类型 after 字段;

  修改字段:只修改字段名称 不修改数据类型

  alter table tablename change 字段 newname 原数据类型;

  修改字段 修改字段名称 同时修改数据类型

  alter table tablename change 字段 newname 新数据类型;  

7.删除字段

  alter table tablename drop 字段;

8.删除表

  drop table tablename;

查询数据

查询单个列

SELECT 列名称 FROM table;

 查询员工的姓名

SELECT ename FROM emp;

查询多个列

SELECT 列1,列2,列3… FROM table;

 查询员工的姓名和工作

SELECT ename , job FROM emp;

查询所有列

SELECT * FROM table;

n  查询员工的所有信息

SELECT * FROM emp;

去除重复数据

SELECT DISTINCT 列1,列2… FROM table;

n  查询emp表中有哪些工种

SELECT DISTINCT job FROM emp;

查询中的四则运算

Mysql支持在查询中直接进行四则运算[ +、-、*、/ ]

n  查询每个员工的年薪

SELECT ename,sal*12 FROM emp;

查询用别名

Select 列1 AS 别名1,列2 别名2 … FROM 表;

n  查询每个员工的年薪

SELECT ename 姓名,sal*12 AS 年薪 FROM emp;

排序查询

SELECT * FROM 表 ORDER BY 列1 ASC,列2 DESC…

n  查询员工的姓名和工资,按照工资降序排序

SELECT ename,sal FROM emp ORDER BY sal DESC;

n  按照多个字段排序:查询员工的姓名,入职日期和工资,按照工资升序,入职日期升序排序

SELECT ename,emp.HIREDATE,sal FROM emp ORDER BY sal ASC, emp.HIREDATE ASC;

分页查询

SELECT * FROM table LIMIT start,pagesize;

n  查询员工表的前三条记录

SELECT ename,emp.HIREDATE,sal FROM emp LIMIT 3; -- 取出来前3条记录

n  查询员工表中间的三条记录,从第五条开始取

SELECT ename,emp.HIREDATE,sal FROM emp LIMIT 5,3; -- 5是行号,行号从0开始

n  查询员工表中间的10条记录,从第5条开始取,按照工资升序

SELECT ename,emp.HIREDATE,sal FROM emp ORDER BY sal LIMIT 5,10;

使用全限定的列名查询

SELECT 表1.列1,表1.列2… FROM 表;

n  查询员工姓名和工资

SELECT emp.ename ,emp.sal FROM emp;

查用表别名查询

SELECT a.列1,a.列2… FROM 表 a;

n  查询员工的姓名和工资

SELECT e.ename ,e.sal FROM emp e;

WHERE子句

Select * from 表 where 条件 order by column1…;

分类:

技术点:

相关文章: