-
CREATE TABLE xcxuser (
id number(10),
username varchar(15),
salary number(10)
);
insert into xcxuser (id,username,salary) VALUES (1,'aaa',800);
insert into xcxuser (id,username,salary) VALUES (2,'bbb',1500);
insert into xcxuser (id,username,salary) VALUES (3,'ccc',2000);
insert into xcxuser (id,username,salary) VALUES (3,'ccc',300);
insert into xcxuser (id,username,salary) VALUES (4,'ccc',500);
--
--对查询结果排序 也可以加在 where 后面
ORDER BY DESC/ASC -- DESC 降序 ASC 升序 默认asc
SELECT * FROM xcxuser ORDER BY id desc; --
SELECT * FROM xcxuser ORDER BY id desc,salary asc;
--对多个字段,排序,只要后面要排序的字段和前面的值一样才能升序,因为oracle 是按行排序的
查看全部 -
-- 范围查询
-- 查询800到2000之间的员工工资
salary>=800 and salary<=2000
BETWEEN ... AND --表示在什么值到什么值,之间,包括当前值
SELECT * FROM xcxuser WHERE salary BETWEEN 800 and 2000; --查询800到2000之间的数值
SELECT * FROM xcxuser WHERE salary NOT BETWEEN 800 and 2000; --加上 NOT 查询不在,800到2000之间的数值
IN/NOT IN --表示的具体值
SELECT * FROM xcxuser WHERE username in ('aaa','bbb');--查询 是aaa,或者bbb的 信息
SELECT * FROM xcxuser WHERE username not in ('aaa','bbb');--加上not ,查询不等于 是aaa,或者bbb的 信息
查看全部 -
-- 模糊查询 LIKE 关键字
-- 通配符的使用(_,%) 一个_只能代表一个字符,%可以代表0到多个任意字符,区分大小写
-- 使用LIKE查询
SELECT * FROM x1 where email LIKE 'A%'; ---查询A开头的信息
SELECT * FROM x1 where email LIKE 'A_'; ---查询A开头并且只有第二个
SELECT * FROM x1 where email LIKE '_@%'; ---查询第二个字符是@的
SELECT * FROM x1 where email LIKE '%@%'; ---查询含有@的
查看全部 -
--待条件的查询
1.单一条件查询
SELECT * FROM x1 where id=3;
2.多条件查询
SELECT * FROM X1 WHERE ID=3 AND Xusername='aaa';
SELECT * FROM X1 WHERE ID=3 or (salary>800 and salary<=2000);
SELECT * FROM X1 WHERE NOT (username='aaa');
--先执行的是小括号里面的内容
--逻辑运算符的优先级:按not,and,or 的顺序依次递减
--比较运算符的优先级高于逻辑运算符
查看全部 -
SELECT * FROM X1;
desc x1;
--使用算术运算符
SELECT ID+10 FROM X1;
--使用比较运算符
SELECT * FROM X1 WHERE id=3;
--使用逻辑运算符
SELECT * FROM X1 WHERE id=1 AND EMAIL = 'A@123';
查看全部 -
--运算符和表达式
2*3 就是 表达式 ,*就是运算符
表达式 = 操作数+运算符
ORACLE中的操作数可以有,常量,和字段
算术运算符 (+,-,*,/)
比较运算符(>,>=,<,<=,=,<>) 比较得出的结果只有,true,false
逻辑运算符(and,or,not) adn表示并且,or表示或者,not表示,非 如:not(9<4)结果true
查看全部 -
--设置多个或一个别名,只是查询的显示
--用 AS 关键字 ,也可以不写
SELECT ID AS 用户id,usernae 用户名 FROM X1;
--去除重复数据 -- DISTINCT 关键字
SELECT DISTINCT * FROM X1;
查看全部 -
SELECT * FROM 表名; --查询所有字段
SELECT 字段名,字段名 FROM 表名; --查询部分
查看全部 -
--在SQL*PLUS中设置格式 只在,sql*plus中有用
1.更改显示的字段名,只是更改的查询的,并没有真正的把表里面的更改
--COLUMN 可以简写成COL
COLUMN 字段名 HEADING 要显示别名
COLUMN username HEADING 用户名; --示例
2.设置结果显示的格式
COLUMN 字段名 FORMAT 要显示的字段格式
--示例
COLUMN username FORMAT a10 ;
COLUMN id FORMAT $999.9 ;
--字符类型只能设置显示的长度 a10 要A开头,然后是长度
--数值类型,用9代表一位数字,小数点,也是用9
3.清楚之前设置的,格式,别名;
COLUMN 字段名 CLEAR ;
COLUMN username CLEAR ; --示例
SELECT * FROM XCX1;
SELECT * FROM XCX3;
查看全部 -
--基本查询语句_格式
SELECT [DISTINCT] 字段名,...|*
FROM 表名 [WHERE 条件];
--DISTINCT 加上这个关键字,重复的数据就不会出现,去重;
查看全部 -
查询
查询表中的所有字段及指定字段
给字段设置别名
运算符和表达式
在SELECT 语句中使用运算符
带条件的查询
模糊查询
范围查询
对查询结果排序
CASE ...WHEN 语句的使用
decode函数的使用
查看全部 -
总结
五大约束
非空约束,主键约束,外键约束,唯一约束,检查约束
更改约束名字
RENAME CONSTRAINT 原约束名称 TO 新约束名称
放在 ALTER TABLE 后面
要删除非空约束,
设置为null就可以了
查看全部 -
-- 删除检查约束
--1.禁用检查约束
DISABLE|ENABLE CONSTRAINT 检查约束名称; --语法
SELECT constraint_name,constraint_type,status from user_constraints
where table_name='XCX_TEST_C';--查询数据字典
ALTER TABLE xcx_test_C DISABLE CONSTRAINT ck_salary_new; --禁用检查约束
--2.删除检查约束
DROP CONSTRAINT 检查约束名称;--语法
ALTER TABLE xcx_test_C DROP CONSTRAINT ck_salary_new;
查看全部 -
-- 在修改表时添加检查约束
ADD CONSTRAINT 约束名字 CHECK(expressions表达式) --语法
--创建一个表
CREATE TABLE xcx_test_C(
id varchar2(10) primary key ,
username varchar2(20),
salary number(5)
);
ALTER TABLE xcx_test_C ADD CONSTRAINT ck_salary_new CHECK(salary>0); --修改表添加,检查约束
查看全部 -
--检查约束
--对输入的值,进行判断,能够满足一定的条件
--在创建表时创建检查约束
--1.在列级创建
CREATE TABLE 表名 (字段名 数据类型 CHECK(expressions表达式)); --语法
--示例
CREATE TABLE xcx_test_a (
id varchar2(10) primary key ,
username varchar2(20),
salary number(5) CHECK(salary>0)
);
INSERT INTO xcx_test_a VALUES(1,'aaa',1);
--2.在表级创建
-- CONSTRAINT 约束名字 CHECK(expressions表达式) --语法
--示例
CREATE TABLE xcx_test_b (
id varchar2(10) primary key ,
username varchar2(20),
salary number(5),
CONSTRAINT ck_salary CHECK(salary>0)
);
查看全部
举报