在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 column_name,column_name
FROM table_name;
或
SELECT * FROM table_name;
该语句用于返回唯一不同的值。
在表中,一个列可能会包含多个重复值,有时希望仅仅列出不同的值,那么就可以使用该语句。
说白了,就是该属性列中重复的值只显示一个。
基本语法:
SELECT DISTINCT column_name,column_name
FROM table_name;
用于提取满足where条件的记录。
基本语法:
SELECT column_name,column_name
FROM table_name
WHERE 某列要满足的条件;
用于对结果集进行排序。
默认按照升序对记录进行排序。
基本语法:
SELECT column_name,column_name
FROM table_name
ORDER BY column_name,column_name ASC|DESC;//升序或降序
如果该关键字之后有多个列名,那么先按照第一个列排序,再在排好序的基础上,按照第二个列排序…
语句用于向表中插入新记录。
基本语法:
第一种形式: 无需指定要插入数据的列名,只需提供被插入的值即可。这种情况下,有多少列就得有多少值插入,否则会造成不匹配。
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 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 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
);
这两个运算符用于连接条件。
基本语法:
SELECT * FROM table_name
WHERE some_column=some_value AND|OR some_column=some_value;
以上就是SQL的一些基础语句。