常用sql语句

Oracle高级语句:
1、修改表字段
ALTER TABLE bs_chngroup_dict ADD group_conments VARCHAR2(100);
update bs_chngroup_dict set group_conments=group_name

2、手动提交事务,Oracle默认不自动提交事务,Mysql默认自动提交事务
commit;

3、回滚
rollback;

4、根据字段question_id有重复的数据查询
select * from bs_knowledge_input where  rownum<1000 and question_id in
(select question_id from bs_knowledge_input group by question_id having count(question_id)>1);

5、Oracle分页,rownum从1开始,先条件查询再排序   -----mysql分页从第一条开始,数10条 select * from q_bsic limit 1,10;
select * from (
       select rownum as rowno,q.* from q_basic q where rownum <10
) temp where temp.rowno > 0 ----order by time


6、日期条件查询,日期格式按照相应的格式匹配
select * from q_basic where create_date>TO_DATe('2018/7/25 16:30:00', 'YYYY/MM/DD HH24:MI:SS');

7、分页,按照时间查询,选取最新记录10条
select * from (
       select rownum as rowno,q.* from (
              select * from q_basic where a_S_time >to_date('2018/10/10','YYYY/MM/DD HH24:MI:SS') order by A_S_Time  
              ) q where rownum <10
) temp where temp.rowno > 0

8、分页使用row_number()函数
select * 
from(select d.*,row_number() over(order by d.a_s_time) as rownumber 
       from q_basic d
       WHERE d.a_s_time BETWEEN TO_DATE ('2018/10/10','YYYY/MM/DD HH24:MI:SS')
        AND TO_DATE ('2018/10/26','YYYY/MM/DD HH24:MI:SS')
 ) p 
where p.rownumber BETWEEN 0 AND 10;

9、根据结果集模糊匹配多条 ---c.xzqh就是多条
select * from t_wry_jbxx jbxx ,t_comn_xzqhdm c
where c.fdm='330100000'and jbxx.dwdz like '%'||(substr(c.xzqh,1,2) )||'%'

10、授权
grant select,insert,update,delete,all on 表名 to 用户名

select table_name from user_tables; //?当前用户名下的表的信息
select table_name from all_tables; //当前用户有权限的表的信息

(只要对某个表有任何权限,即可在此视图中看到表的相关信息)


select table_name from dba_tables; //系统里所有的表的信息,需要DBA权限才能查询
select sys_guid() from dual;       //系统自动生成唯一id
select * from all_sequences        //查看所有的序列


1. DML(data manipulation language 数据操作语言):insert update delete

2. DDL(data definition language 数据定义语言): create table,alter table,drop table,truncate?    
Oracle ?中 修改字段名称 ?alter table student rename column sname to myname;
    
MySQL 中 修改字段名称 ?alter table student change name myname vachar(30);

    
Oracle中 添加一个列(字段)
    
ALTER TABLE 表名 add (COLUMN 列名 数据类型(长度)); 
-- 注意 add() 这个括号不要忘了
    Oracle 中删除一个列
    
ALTER TABLE 表名 DROP COLUMN 列名;
    
Oracle 中修改列名
    
alter table student rename column 旧列名 to 新列名;
    
Oracle中修改表名
    
ALTER TABLE 旧表名 RENAME TO 新表名;


说明:注意加上COLUMN,为了强调修改的是表中的字段信息

注意:
MySQL 中的DDL 和 Oracle 中的DDL语句有差异,注意加以区分
3.DCL(data control language 数据库控制语言) 
grant 授权 revoke 撤销授权


4.DQL(data query language 数据库查询语言) select


oracle常见函数
https://www.cnblogs.com/lxl57610/p/7442130.html
 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

finbarr45

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值