SQL常用命令

数据库相关

  1. 启动服务 sudo service mysql start
  2. 连接数据库 mysql -u root
  3. 查看数据库 show databases
  4. 创建数据库 CREATE DATABASE <database name>
  5. 跳转数据库 use <database name>
  6. 查看表 show tables
  7. 创建表 CREATE TABLE <table name>{<culomn name> type}
  8. 退出 ‘exit’

数据类型

详细可参考:mysql数据类型

《SQL常用命令》 数据类型

约束

在创建新表时,可以对新建列添加约束,用以更好的说明表.

主键(PRIMARY KEY)

不能为空且整表唯一

CREATE TABLE people(
 id int(10) PRIMARY KEY,
name VARCHAR(10), 
)

可以设置多列总体为主键

create table student 
( 
   name varchar(19), 
   id NUMBER, 
   value VARCHAR(10), 
PRIMARY KEY (name,id) 
) 

默认值 (DEFAULT)

在插入数据时,如果该列未指定值,则默认值生效

CREATE TABLE people(
 id int(10) PRIMARY KEY ,
name VARCHAR(10) DEFAULT 233, 
)

INSERT INTO people(id)VALUES(1); // id 1 name 233

唯一约束(UNIQUE)

该列的所有值唯一

CREATE TABLE people(
 id int(10) PRIMARY KEY ,
name VARCHAR(10) UNIQUE, 

INSERT INTO people(id,name)VALUES(1,'jack'); //sucess
INSERT INTO people(id,name)VALUES(2,'jack'); //faild
)

外键约束 (FOREIGN KEY)

设定某列的值为另一个表的某行

CREATE TABLE Orders
(
Id_O int NOT NULL,
OrderNo int NOT NULL,
Id_P int,
PRIMARY KEY (Id_O),
FOREIGN KEY (Id_P) REFERENCES Persons(Id_P) //id_P的值为Persons表中Id_P对应的那一行
)

非空约束

设定该列必须有值,不然执行语句出错

CREATE TABLE people(
 id int(10) PRIMARY KEY ,
name VARCHAR(10) UNIQUE NOT NULL, 

INSERT INTO people(id,name)VALUES(1,'jack'); //sucess
INSERT INTO people(id)VALUES(2); //faild

数据相关

VAHR VARCHAR,TEXT,DATE,TIME,ENUM 值需要用单引号括起来

插入数据

INSERT INTO <table name>(<culomn name1>,<culomn name2>,<culomn name4>) VALUES(<value1>,<value2>,<value4>)

选择数据

SELECT  <column name>,<column name>  FROM  <table name> WHERE <condition>

条件选择拼接(OR AND)

SELECT  <column name>,<column name>  FROM  <table name> WHERE <condition> AND/OR <condition>

范围选择 (IN & NOT IN)

选择某个条件为某列值为选定值

SELECT name,age,phone,in_dpt FROM employee WHERE in_dpt NOT IN ('dpt1','dpt3'); //选择 in_dpt 的值在 'dpt1'和'dpt3'等

通配符(LIKE)

在LIKE后添加通配符组成查询条件
_表示一个未指定字符
%表示一个或多个未指定字符

SELECT name,age,phone FROM employee WHERE phone LIKE '1101__';//1101开头的六位数字

排序(ORDER BY)

可以指定查询结果按照某列的值增序(ASC)降序(DESC)

SELECT name,age,salary,phone FROM employee ORDER BY salary DESC;
    原文作者:渐行渐远ty
    原文地址: https://www.jianshu.com/p/c636fe7ad305
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞