SQL基础

SQL基础

SQL分类

(1) DDL(Data Definition Languages):数据定义语言:不同的数据段、数据库、表、列、索引等数据库对象的定义(create、drop、alter)

(2) DML (Data Manipulation Language):数据操纵语句:增删改查(inset、delete、select)

(3) DCL(Data Control Language) :数据控制语句:数据库、表、字段、用户的访问权限和安全级别。

1.DDL数据定义语句

    对数据库内部的对象进行创建、删除、修改的操作语言。涉及表的定义,结构的修改。
语句意义

CREATE DATABASE dbname

创建数据库

SHOW databases/tables

查看系统存在哪些数据库/数据表

USE dbname

选择数据库

DROP DATABASE dbname

删除数据库

DROP TABLE tablename

删除表

CREATE TABLE tablename
(
column_name_1 column_type_1 constraints,
column_name_2 column_type_2 constraints , ……
column_name_n column_type_n
constraints
)

创建数据库

DESC tablename

查看表定义

SHOW CREATE TABLE tablename \G

查看更详细的表定义,\G表示使字段按照顺序竖着排列

ALTER TABLE tablename
MODIFY [COLUMN] column_definition
[FIRST | AFTER col_name]

修改表类型

ALTER TABLE tablename
ADD [COLUMN] column_definition
[FIRST | AFTER col_name]

增加表字段

ALTER TABLE tablename
DROP [COLUMN] col_name

删除表字段

ALTER TABLE tablename
CHANGE [COLUMN] old_col_name column_definition
[FIRST|AFTER col_name]

字段改名

ALTER TABLE tablename
RENAME [TO] new_tablename

表改名

2.DML数据操纵语句

      DML 操作是指对数据库中表记录的操作,主要包括表记录的插入(insert)、更新(update)、删除(delete)和查询(select)
语句意义

INSERT INTO tablename (field1,field2,……fieldn)
VALUES(value1,value2,……valuesn);

插入记录

UPDATE tablename
SET field1=value1,field2.=value2,……fieldn=valuen
[WHERE CONDITION]

更新记录

DELETE FROM tablename
[WHERE CONDITION]

删除记录

SELECT * FROM tablename
[WHERE CONDITION]

查询记录

SELECT DISTINCT column_name
FROM tablename
[WHERE CONDITION]

查询不重复的记录

SELECT * FROM tablename
[WHERE CONDITION]
[ORDER BY
field1 [DESC | ASC],
field2[DESC | ASC],
……fieldn [DESC|ASC]
[LIMIT offset_start,row_count]

排序限制

SELECT [field1,field2,……fieldn] fun_name
FROM tablename
[WHERE where_contition]
[GROUP BY field1,field2,……fieldn
[WITH ROLLUP]]
[HAVING where_contition]

聚合操作group by /having

SELECT ename,deptname
FROM dept
RIGHT JOIN[LEFT JOIN] emp
ON dept.deptno=emp.deptno;

右连接right join 左连接left join

in、not in、=、!=、exists、not exists
子查询

SELECT * FROM t1
UNION|UNION ALL
SELECT * FROM t2
……
UNION|UNION ALL
SELECT * FROM tn;

记录联合

3.DCL数据控制语句

  DCL 语句主要是 DBA 用来管理系统中的对象权限时所使用
语句意义

grant select,insert on
sakila.* to
‘z1’@‘localhost’ identified by ‘123’

创建一个数据库用户 z1,具有对 sakila 数据库中所有表的 SELECT/INSERT 权限

revoke insert on sakila.* from ‘z1’@‘localhost’;

将z1 的权限变更,收回 INSERT,只能对数据进行 SELECT 操作

4.帮助的使用

语句意义
?contents显示所有可供查询的的分类
? data typesMysql支持的数据类型
? show

5.MYSQL支持的数据类型

(1)数值型

整数:tinyint  smallint  mediumint  int/integer  bigint 

浮点数:float  double 

定点数:dec(m,d) decimal(m,d):m表示长度,d表示小数位数

位:bit

(2)日期和时间类型

date  datetime  timestamp  time  year

(3)字符串类型

整数:char   varchar

字节:tinyblob   blob   mediumblob   longblob  tinytext   text mediumtext   longtext   varbinary  binary

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值