数据库_SQL

2021/5/7 2:27:07

本文主要是介绍数据库_SQL,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

SQL语句

DML

  • SELECT

select 列名称 from 表名称;

展示表中的某一列,可以多写

select * from 表名称;

展示整张表所有的列

  • DISTINCT

select DISTINCT 列名称 from 表名称;

去掉展示列中重复的行

  • WHERE

select 列名称 from 表名称 where 条件;

条件选择,满足条件的行中被选中的列才会被展示出来

操作符 描述
= 等于
<> 不等于,也可以写作!=
> 大于
< 小于
>= 大于等于
<= 小于等于
between 在某个范围内
like 搜索某种模式

例子:

select * from person where city='北京';

string(文本值)使用单引号,数值使用双引号

  • AND OR
    AND:俩条件都要成立
    OR:俩条件成立一个即可
    例子:

select * from person where firstname='li' AND lastname='si';
显示所有姓李名四的人
select * from person where firstname='li' OR lastname='si';
显示所有姓李的或者名四的
这俩也可以用在一条语句中:
select * from person where (firstname='li' OR firstname='zhang') AND lastname='si';

  • ORDER BY

select 列名称 from 表名称 ORDER BY 条件;
条件为列,可以有多个,可以指定排序方式

例子:

select company,ordermumber from orders ORDERED BY company;
按照compamy的字母顺序排序
select company,ordermumber from orders ORDERED BY company,ordernumber;
按照字母顺序显示公司名称company,以数字顺序显示序号ordernumber
公司名称优先级高

逆序关键字:DESC 顺序关键字:ASC 放在条件之后
例子:

select company,ordermumber from orders ORDERED BY company DES,ordernumber AES;
逆序显示公司名称,顺序显示序号

  • INSERT INTO

insert into 表名称 values (值1,值2,值3,值4,......);

也可以指定所要插入数据的列

insert into table_name(列1,列2,......) values (值1,值2,......);

  • UPDATE

update 表名称 set 列名称 = 新值 where 列名称 = 某值;

更新某一行的一个列
例子:

update person set firstname = 'zhang' where lastname = 'san';
把表person中lastname是san的人的firstname改为张

更新某一行的若干列

update person set address = 'zhongshanlu',City = 'NanJing' where lastname = 'san';
同时修改了列address和city

  • DELETE

delete from 表名称 where 列名称 = 值;

删除某一行
例子:

delete from person where lastname = 'san';
删除名字叫san的人所在的元组

删除所有行

delete from table_name;
或者
delete * from table_name;

DDL

  • CREATE DATABASE

create database database_name;
创建数据库

  • CREATE TABLE

create table 表名称
{
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
......
};

DATA TYPE数据类型:
1.Integer整形
image
2.Float浮点
image
3.String字符串
image
4.Boolean布尔值
image
5.Binary二进制
image
6.Datetime日期
image
image

稍微总结一下:
image

SQL约束
1.not null非空

Ssex char(2) not null,
Ssex这一列不可以为空

2.unique 约束唯一标识数据库表中的每一条纪律

unique(A1,A2,A3,......,Am),

和primary key约束均为列或者列集合提供了唯一性的保证
primary key拥有自动定义的unique约束,每个表可以有多个unique但是不能有多个primary key

CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
UNIQUE (Id_P,LastName,FirstName)
)

3.primary key 主键
不能包含NULL 有且只有一个

CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (Id_P)
)

4.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)
)

5.check 约束用于限制列中的值的范围

check(p),

对于单个列定义check约束,该列只允许特定的值
对于一个表定义check约束,该约束会在特定的列中对值进行限制

CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CHECK (Id_P>0)
)

6.default
向列中插入默认值,如果没有规定其他值,则会将默认值添加到所有的新纪录

CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255) DEFAULT 'Sandnes'
)

  • DROP TABLE

drop table r;

删除整张表r,包括r的元组和模式

  • ALTER TABLE
    在已有的表中添加、修改或删除
    添加列:

ALTER TABLE table_name
ADD column_name datatype;

删除列:

ALTER TABLE table_name
DROP COLUMN column_name;

修改数据类型:

ALTER TABLE table_name
ALTER COLUMN column_name datatype

其他的用法:
image



这篇关于数据库_SQL的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程