02数据库-语法

20200224

1、ORDER BY 关键字用于对结果集进行排序

SELECT column1_name,column2_name FROM table_name

ORDER BY column1_name,column2_name ASC|DESC;

优先按照列名1进行排序,再按照列名2进行排序

列名可以不用写,写数字 可代表按照第几列进行排序,并采用默认的显示顺序排列

默认按照ASC升序排列

2、INSERT INTO 语句用于向表中插入新记录

不需要插入的值,可命名为null或''

某些列必须输入值才可进行操作

第一种形式无需指定要插入数据的列名,只需提供被插入的值,但值的数量需和列名保持一致

INSERT INTO table_name

VALUES (value1,value2,value3,...);

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

INSERT INTO table_name(column1,column2,column3,...)

VALUES (value1,value2,value3,...);

3、列别名

select ename as 姓名 from emp;   或者     select ename 姓名 from emp;

如果列别名含有特殊符号(如空格、¥、+等),则需将此列别名用双引号标上

4、空值

空值不能进行运算,null进行任何运算的算式都等于空值

如果空值要参与运算,则需要将空值进行转换

nvl(可能产生空值的列,指定值),如下所示 是将comm列中的空值都转换为100000

5、Like模糊查询

%:代表任意数量的任意字符

_:代表任意一个字符

select * from emp where ename like '_A%';查询姓名中第二个字母为A的员工信息

6、UPDATE 语句 更新表中已存在的记录

Update emp Set ename='SMITH' Where empno=7369;

7、DELETE 语句用于删除表中的行

DELETE FROM table_name WHERE some_column=some_value;

可以在不删除表的情况下,删除表中所有的行,同时表结构、属性、索引将保持不变

DELETE FROM table_name;

或DELETE * FROM table_name;

8、SQL SELECT TOP 子句

SELECT TOP 子句用于规定要返回的记录的数目

Select * From emp Where Rownum <=5;    从 "emp" 表中选取前5条记录

9、SQL通配符

%:替代0个或多个字符;

_:替代一个字符;

[charlist]:字符列中的任何单一字符;

[^charlist]或[!charlist]:不在字符列中的任何单一字符;

10、IN操作符

IN 操作符允许在 WHERE 子句中规定多个值

select ename from emp where deptno in(10,20);

select ename from emp where deptno=10 or deptno=20;

11、BETWEEN 操作符

ETWEEN 操作符选取介于两个值之间的数据范围内的值。这些值可以是数值、文本或者日期。

select * from emp where ename not between 'A' and 'F';    查询emp表中姓名开头不是从A到F的员工信息

select * from emp where hiredate between '01-1月-1980' and '01-1月-1981';    查询emp表中 1980/01/01到1981/01/01期间入职的员工信息

注意:不同的数据库中,between操作符产生的效果可能会不一样,可能包含两个边界值也可能只包含其中一个,或者都不包含,具体情况需要视工具而定,可事先进行检查。

12、NOT NULL 约束

在默认的情况下,表的列接受 NULL 值

NOT NULL 约束强制列不接受 NULL 值。

NOT NULL 约束强制字段始终包含值。这意味着,如果不向字段添加值,就无法插入新记录或者更新记录。

create table Persons (  id int NOT NULL, LastName varchar(255) NOT NULL,FirstName varchar(255) NOT NULL, Age int);      这个语句就强制 "ID" 列、 "LastName" 列以及 "FirstName" 列不接受 NULL 值

在一个已创建的表中添加 NOT NULL 约束  ALTER TABLE Persons MODIFY Age int NOT NULL;

在一个已创建的表中删除 NOT NULL 约束  ALTER TABLE Persons MODIFY Age int NULL;

13、NULL值

无法使用比较运算符=、< 或 <>等来测试null值,必须使用 IS NULL 和 IS NOT NULL 操作符

14、NULL函数

Oracle    nvl(可能有空值的列名,希望将null转换成的数值)

SQL Server / MS Access    ISNULL(可能有空值的列名,希望将null转换成的数值)

MySQL     IFNULL(可能有空值的列名,希望将null转换成的数值) 或者   COALESCE(可能有空值的列名,希望将null转换成的数值)


作者:kerwin_chyl

文章链接:https://www.jianshu.com/u/66bf7abdc5a8

本文版权归作者和简书共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 5.多表查询 多表查询 目的:从多张表获取数据 前提:进行连接的多张表中有共同的列 等连接 通过两个表具有相同意义...
    乔震阅读 1,550评论 0 0
  • mysql数据库中 :database : 文件夹table : 数据表(数据文件) 进入mysqlmysql -...
    赋闲阅读 643评论 0 0
  • Oracle SQL基本操作 Oracle数据库基本操作 1.概述 Oracle数据库客户端一般需要安装在服务器上...
    横竖撇捺啊阅读 605评论 0 1
  • 第一章SQL 1.Oracle数据库基础 (1).开始>运行>输入:sqlpusw/nolog>确定sqlplus...
    蛋炒饭_By阅读 404评论 0 0
  • 有些事儿,并不是服与不服的关系,而是到了什么年纪做什么年纪的事儿。比如,熬夜,年劲人熬一次和上了岁数的人熬一次,其...
    因为咸啊阅读 260评论 0 0

友情链接更多精彩内容