引子
sql的使用是非常频繁的,有必要做一定的学习了解
SQL的基本概念
SQL是Structured Query Language的缩写,意思是结构化查询语言,是一种在数据库管理系统(Relational Database Management System, RDBMS)中查询数据,或通过RDBMS对数据库中的数据进行更改的语言 根据对RDBMS 赋予的指令种类的不同,SQL 语句可以分为以下三类:
DDL(Data Definition Language) CREATE: 创建数据库和表等对象 DROP: 删除数据库和表等对象 ALTER: 修改数据库和表等对象的结构
DML(Data Manipulation Language) SELECT:查询表中的数据 INSERT:向表中插入新数据 UPDATE:更新表中的数据 DELETE:删除表中的数据
DCL(Data Control Language) COMMIT: 确认对数据库中的数据进行的变更 ROLLBACK: 取消对数据库中的数据进行的变更 GRANT: 赋予用户操作权限 REVOKE: 取消用户的操作权限
SQL的基本crud
1.查询
查询是最复杂的,先举个简单查询例子 SELECT column_name,column_name FROM table_name; 可以的查询结果集进一步的处理、过滤、去重、分页、排序等等 SELECT DISTINCT column_name,column_name FROM table_name WHERE column_name operator value AND/OR column_name operatro value ORDER BY column_name,column_name ASC|DESC;
2.插入 INSERT INTO table_name VALUES (value1,value2,value3,…); 3.更新 UPDATE table_name SET column1=value1,column2=value2,… WHERE some_column=some_value;
4.删除
DELETE FROM table_name WHERE some_column=some_value;
SQL的一些进阶操作
1.有时候需要做模糊查询,需要like和通配符的联合使用
SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern(可以拼接%);
2.有时候两个表有关联,需要联合查询,使用left join或right join
SELECT column_name(s) FROM table1 LEFT\RIGHT JOIN table2 ON table1.column_name=table2.column_name;
3.表的某些列属性需要添加约束
比如主键常用 PRIMARY KEY 、NOT NULL ,有些列添加 UNIQUE保证唯一性,有些列添加 DEFAULT 给与默认值
其他
欢迎指正与指导!
|