SQL必掌握的基础语句

在SQL中,一些语句是建立在某一些语句上的,所以总结了以下一些基础的SQL语句供大家参考。

创建数据库
创建基本表
SELECT语句
SELECT DISTINCT语句
WHERE语句
ORDER BY关键字
INSERT INTO语句
UPDATE语句
DELETE语句
AND & OR关键字

 

创建数据库

基本语法:

CREATE DATABASE dbname;

 

创建基本表

创建基本表时,其实牵扯的东西就比较多了,比如数据类型,完整性约束等等。

这里给出一部分的概念,便于理解后面的内容。

常用的数据类型:
1.char
固定长度的字符型,最大存放2000个字符。填写数据长度不满,自动用空格补齐。
2.varchar2
可变长度的字符型,最大存放4000个字符。不满不补齐。

常用的完整性约束:
一、实体完整性约束:PRIMARY KEY
二、参照完整性约束:FOREIGN KEY
三、用户自定义的完整性约束:
1.check约束
2.唯一性约束:unique
3.非空值约束:not null

基本语法:

create table <表名>
(<列名> <数据类型> <列级完整性约束条件>
 <列名> <数据类型> <列级完整性约束条件>
 ......
 <表级完整性约束条件>
 );

对多个属性进行约束时,就会用到表级约束。
例子:

create table sc(
	sno varchar2(10) primary key,//列级约束
	cno varchar2(10),
	foreign key(cno) references s(cno)//参照完整性,该表的cno参照s表的cno
);

 

SELECT语句

该语句用于从数据库中选取数据。
结果被存储在一个结果表中,称为结果集。

基本语法:

SELECT column_name,column_name
FROM table_name;
或
SELECT * FROM table_name;

 

SELECT DISTINCT语句

该语句用于返回唯一不同的值。
在表中,一个列可能会包含多个重复值,有时希望仅仅列出不同的值,那么就可以使用该语句。

说白了,就是该属性列中重复的值只显示一个。

基本语法:

SELECT DISTINCT column_name,column_name
FROM table_name;

 

WHERE语句

用于提取满足where条件的记录。

基本语法:

SELECT column_name,column_name
FROM table_name
WHERE 某列要满足的条件;

 

ORDER BY关键字

用于对结果集进行排序。
默认按照升序对记录进行排序。

基本语法:

SELECT column_name,column_name
FROM table_name
ORDER BY column_name,column_name ASC|DESC;//升序或降序

如果该关键字之后有多个列名,那么先按照第一个列排序,再在排好序的基础上,按照第二个列排序…

 

INSERT INTO语句

语句用于向表中插入新记录。

基本语法:
第一种形式: 无需指定要插入数据的列名,只需提供被插入的值即可。这种情况下,有多少列就得有多少值插入,否则会造成不匹配。

INSERT INTO table_name
VALUES (value1,value2,value3,...);

第二种形式: 指定列及被插入的值

INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);

还可以向表中插入查询结果:
比如下面向Sno_grade中插入从SC表中查询的结果。

INSERT INTO Sno_grade (Sno,Avg_grade)
SELECT Sno,AVG(grade) FROM SC
GROUP BY Sno;

 

UPDATE语句

用于更新表中已存在的记录。

基本语法:

UPDATE table_name
SET column1=value1,column2=value2,...
WHERE some_column=some_value;

如果忽略了WHERE语句,那么所有的数据都会被更新。
所以,执行没有 WHERE 子句的 UPDATE 要慎重,再慎重。

带子查询的UPDATE语句:
例如修改SC表,选择是‘SC’的修改。

UPDATE SC SET Grade=Grade+2
WHERE 'CS'=(
        SELECT Sdept FROM Student
        WHERE Student.Sno=SC.Sno
);

 

DELETE语句

用于删除表中的行。

基本语法:

DELETE FROM table_name
WHERE some_column=some_value;

如果省略了 WHERE 子句,所有的记录都将被删除!

带子查询的删除语句:
删除SC表中,是‘CS’的元组。

DELETE FROM SC
WHERE 'CS' =(
        SELECT Sdept FROM Student
        WHERE Student.Sno=SC.Sno
);

 

AND & OR 运算符

这两个运算符用于连接条件。

基本语法:

SELECT * FROM table_name
WHERE some_column=some_value AND|OR some_column=some_value;

以上就是SQL的一些基础语句。

你可能感兴趣的:(数据库)