Oracle数据库与MySQL数据库的区别

1.组函数用法规则

mysql中组函数在select语句中可以随意使用,但在oracle中如果查询语句中有组函数,那其他列名必须是组函数处理过的,或者是group by子句中的列否则报错

eg:

select name,count(money) from user;这个放在mysql中没有问题在oracle中就有问题了。
而select name,count(money) from user group by name或者select max(name),count(money) from user;
在oracle就不会报错,同样这两种情况在mysql也不会报错
   create table 表名字(id number(5,2), name varchar2(20 
   byte));//创建一个表单,里面有两列,第一列是id 是数值型 切共有5位数字,
   并有两位是小数,三位是整数 ,第二列是name 字符型,能输入20个字节,必须是      字节
左右模糊查询(INSTR相比LIKE效率高):
INSTR(column_name,value) > 0 或 LIKE '%value%'

INSTR(column_name,value) = 0 或 NO LIKE '%value%'
1where不能放在group by后面
2、having通常跟group by一起使用,放在group by后面,此时作用相当于where
3where后面的条件中不能有聚集函数,比如SUM(),AVG()等,而having可以
创建索引:
create index 索引名 on 表名(字段,...
查
查询表中多余的重复数据(多个字段)
select column_name1,column_name2 from table_name group by column_name1,column_name2 having count(*) > 1;
查询表有多少条数据:
select count(primary_key) from table_name;
查询表中某字段有多少个不重复的数据:
select countdistinct column_name) from table_name;
查看表结构(命令行语句):
desc table_name;
查看序列当前值和下一个值:
select seq_name.currval from dual;
select seq_name.nextval from dual;
左连接查询(以左表为基础,加上左表和右表匹配后的数据):
select t.column_name1,t.column_name2,u.column_name1 from table_name1 t left join table_name2 u on t.column_name1 = u.column_name1 where ...

修改

UPDATE customers
 SET last_name ='Orange'
 WHERE customer_id = 2

删除

DELETE customers
 WHERE customer_id = 2

增加

insert into temp values(1,'张三',30);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值