oracle转MySQL 踩过的坑 1.2 rownum(分页查询)和拼接字符串

4 篇文章 0 订阅

oracle的rownum:ROWNUM是一种伪列 对于rownum来说它是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,依此类推,这个伪字段可以用于限制查询返回的总行数,且rownum不能以任何表的名称作为前缀。

MySQL对应的是用limit:

select ROWNUM s, t.* FROM T_PR_APPLY  t where ROWNUM <=10
select (@i:=@i+1) s, t.* FROM T_PR_APPLY  t ,(select @i:=0) as it limit 5 

取出前10 条记录

 

MySQL的

分页查询

SELECT * from (select ROWNUM s, t.* FROM T_PR_APPLY  t ) b
where b.s BETWEEN 5 and 10  查询第5到第10 的数据
select * from (select (@i:=@i+1) s, t.* FROM T_PR_APPLY  t ,(select @i:=0) as it) r limit 5,5;  第5条后的五条数据

MySQL

oracle 的wm_concat 拼接字符

对于MySQL

是用的是GROUP_CONCAT

GROUP_CONCAT(t.title ,",")凭借逗号和title的值

 

还有一个拼接就是 ||

oracle中可以使用 || 拼接字符

例子:

AND ','||t.TRIAL_USER||',' like '%,5c9e0a1b62594bb58a8a092ca7d519ea,%'

 

可以查

46951706912e491280fa3b6ce5e5c7e3,5c9e0a1b62594bb58a8a092ca7d519ea,41b654caae564a179345456ecc8b1e88,47dde6c8f77444448474c1c2a76ac598

这样的数据,就用,号拼接起来,

在MySQL中有一个CONCAT(expr1,expr2,expr3...)这样的拼接函数:

CONCAT(',',t.TRIAL_USER,',') like '%,47dde6c8f77444448474c1c2a76ac598,%' 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值