Mysql数据库高级SQL

1、从一个表更新到另外一个表

方法一

UPDATE temp_x a, temp_y b SET a.`c_amount` = b.`c_amount` WHERE a.`c_id` = b.`c_id`;

方法二、

UPDATE temp_x a SET a.`c_amount` = (SELECT b.c_amount FROM temp_y b WHERE b.`c_id` = a.`c_id`)

2、多字段排序

if test="dto.mindSort!=null and dto.mindSort=='4'.toString()">

dict.sort ASC,reportStatus desc,

case reportDay

when '申请中' then '1'

when '长期可申报' then '2'

when '无需申报' then '3'

when '申报结束' then '4'

end asc

if>

3、获取当前时间的月份

select MONTH(DATE_SUB(CURDATE(),INTERVAL 1 MONTH)) from dual;

获取当前月份的上个月月份

DATE_SUB(CURDATE(),INTERVAL 1 MONTH)

4、表中有重复数据,如果去重查询数据

select a.* from taxation_data a join (select social_credit_code,max(base_id) best_history_data from taxation_data group by social_credit_code) b where a.social_credit_code=b.social_credit_code and a.base_id=b.best_history_data;

相关推荐
陈敬雷-充电了么-CEO兼CTO3 分钟前
推荐算法系统系列>推荐数据仓库集市的ETL数据处理
大数据·数据库·数据仓库·数据挖掘·数据分析·etl·推荐算法
MeshddY6 分钟前
(超详细)数据库项目初体验:使用C语言连接数据库完成短地址服务(本地运行版)
c语言·数据库·单片机
wuxinyan1236 分钟前
Java面试题033:一文深入了解MySQL(5)
java·数据库·mysql·面试
笑衬人心。8 分钟前
Ubuntu 22.04 + MySQL 8 无密码登录问题与 root 密码重置指南
linux·mysql·ubuntu
萧曵 丶40 分钟前
Spring @TransactionalEventListener
java·数据库·spring·事务·transactional·异步
坤坤不爱吃鱼42 分钟前
【MySQL\Oracle\PostgreSQL】迁移到openGauss数据出现的问题解决方案
mysql·postgresql·oracle
胡斌附体43 分钟前
mobaxterm终端sqlplus乱码问题解决
数据库·乱码·sqlplus·字符集设置
moon66sun1 小时前
开源项目XYZ.ESB:数据库到数据库(DB->DB)集成
数据库·esb
欧阳有财1 小时前
[java八股文][Mysql面试篇]日志
java·mysql·面试
TDengine (老段)1 小时前
使用 StatsD 向 TDengine 写入
java·大数据·数据库·时序数据库·iot·tdengine·涛思数据