SQL语句分增删改查:
即insert,delete,update,select
select语句
语法:select column_name, column_name from table_name where ..
select * from emp;--查看全表数据
select deptno,dname,loc from dept; 在表中查询列
select loc from dept;
下面几个例子大家练一下:
select * from emp where sal>2000; 查询工资大于2000的员工
select * from emp where sal>2000 order by sal; 按工资由高到低排序工资大于2000的员工
select * from emp where sal> 2000 order by sal desc; 按工资由低到高排序工资大于2000的员工
order by 是按某列排序,desc是降序,如果没有即使默认的asc升序排列
select * from user_objects; --查看测试账号下面有哪些对象
2.insert 语句
语法:insert into table_name values (, , ) where..
insert into table_1_name select * from table_2_name (两个表的结构必须一致)
CTAS复制表大法:
create table test as select * from emp;创建一张叫testt的表,里面的数据来自emp 表
insert into test values(8000,'知晓Oracle','学习交流',null,sysdate,30000,null,10);--指定所有明确的列 比较常用
insert into test(empno,ename,sal) values(8000,'知晓Oracle','学习交流',sysdate,30000,10);--指定要插入的列
批量插入,要保证表结构一致
insert into test select * from emp;
用工具插入
select * from test for update;会把test表的所有行锁住
(select * from test where empmo=8001 for update;只锁指定的行)
插入表格
执行后要提交(commit) 然后运行查询语句才能看到
上箭头可以便捷翻出上一条sql语句。
3.update更新语句
update test set sal=10000 where empno=7369; 更改指定数据
更新多个列:
update test set job="MANAGER",sal=15000 where empno=7369;
给所有员工涨500
update test set sal=sal+500;
4.delete
删除语句
删除的时候要备份或者加限定,不要删错了。
delete test where sal<2000;
delete test where ename is null;
面试题:
delete与truncate的区别?
私信有答案
