批量执行mysql语句和group by排序

文章介绍了如何使用MySQL语句进行批量的数据库操作,如添加列,以及如何利用GROUPBY结合排序规则选择每个分组的特定记录,例如选择每个购物车中的最高价格商品。
摘要由CSDN通过智能技术生成
SELECT CONCAT('alter table ',table_schema,'.',table_name,' ADD COLUMN `bb` varchar(500) ')  
from information_schema.tables  
where table_schema='aa' 
and table_name like 'hh%';

无论是想批量插入,更新,增加删除修改列字段,都可以写成上面这种形式的mysql语句,然后这个语句就是帮你构造批量的mysql语句,接着你去复制所有的查询结果,然后粘贴到mysql工具的执行窗口,然后开始执行就可以了。

group by 排序

需求:我想要group by根据一个字段来分组,分组后留下的一条记录按照自己的需求来,比如留下最新创新的记录,或者某个字段最大的记录等等,

这种情况,group by 一般是根据select的排序,筛选出每个分组的第一个记录,所以如果我们想要按照某某排序,那么先在select语句上规定好排序规则,然后再分组。

例如:比如一个数据表中一个cart_id有对应多个产品product_id,我想要选出每个购物车的一个价格最大的记录。

select ii.cart_id,ii.product_id,ii.price 
from (select * from cart order by price desc) as ii
group by ii.cart_id

还有第二种方法,就是使用having进行筛选

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值