转义字符
select * from emp where ename like '%\_%' escape '\'; //将下划线转义
修改字段的值
update 表名 set 字段=?where 字段=?;
数据回滚
rollback; //oracle有事务
SQL优化
and //逻辑并 --尽量把假的放右边,让它先被执行
SQL执行计划
sql的执行是通过sql执行计划来执行的
单行函数
select lower('HELLO WORLD') 转小写,upper('hello world') 转大写,initcap('hello world') 首字母大写 from dual;
获取当前时间
日期格式化
查询某月的全部数据
用函数来计算准确的日期差
当月最后一天
下一个指定日期(仅限星期n)
条件表达式案例:
给员工涨工资,总裁1000,经理800,其他400,列出涨前/涨后工资
使用Oracle自身的语法
分布式数据库自动备份(异地容灾)
方法:触发器,快照
注意,日期和日期不能相加
空值问题
oracle数据中,null值最大,因此,要按照浏览习惯,需将null值排在最后
select * from emp order by comm desc nulls last
sqlplus /as sysdba 最高权限?
show user --当前用户是谁
select * from tab --当前用户下的表
hose cls 清屏
distinct去掉重复的值
concat / || 相当于java连接字符串的 + 号
例子:select concat('hello' , 'world') from dual; (dual是一个伪表)
等同于:select 'hello'||'world' from dual;
desc -- describe 查看表的结构
ed -- edit 打开txt编辑上一条sql
c -- change,当sql写错:
写行号:比如 2 -- 回车
然后: c空格/错的单词/正确的单词
最后:/ 执行上一条sql
for -- format
col -- column
转义字符
select * from emp where ename like '%\_%' escape '\'; //将下划线转义
修改字段的值
update 表名 set 字段=?where 字段=?;
数据回滚
rollback; //oracle有事务
SQL优化
and //逻辑并 --尽量把假的放右边,让它先被执行
SQL执行计划
sql的执行是通过sql执行计划来执行的
单行函数
select lower('HELLO WORLD') 转小写,upper('hello world') 转大写,initcap('hello world') 首字母大写 from dual;
获取当前时间
日期格式化
查询某月的全部数据
用函数来计算准确的日期差
当月最后一天
下一个指定日期(仅限星期n)
条件表达式案例:
给员工涨工资,总裁1000,经理800,其他400,列出涨前/涨后工资
使用Oracle自身的语法
分布式数据库自动备份(异地容灾)
方法:触发器,快照
注意,日期和日期不能相加
空值问题
oracle数据中,null值最大,因此,要按照浏览习惯,需将null值排在最后
select * from emp order by comm desc nulls last
sqlplus /as sysdba 最高权限?
show user --当前用户是谁
select * from tab --当前用户下的表
hose cls 清屏
distinct去掉重复的值
concat / || 相当于java连接字符串的 + 号
例子:select concat('hello' , 'world') from dual; (dual是一个伪表)
等同于:select 'hello'||'world' from dual;
desc -- describe 查看表的结构
ed -- edit 打开txt编辑上一条sql
c -- change,当sql写错:
写行号:比如 2 -- 回车
然后: c空格/错的单词/正确的单词
最后:/ 执行上一条sql
for -- format
col -- column