第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

MySql的批量插入批量更新以及分組取最大值

標(biāo)簽:
MySQL

1,为了演示,随便创建的两个表,用户表uesr,东区用户表user_east:

     CREATE TABLE USER(
        id INT(10) NOT NULL AUTO_INCREMENT,
        table_id INT(4) NOT NULL,
        NAME VARBINARY(20)  NOT NULL,
        address VARBINARY(20) NOT NULL,
        pv INT(10) DEFAULT 0,
        PRIMARY KEY(id)
        ) DEFAULT CHARSET = utf8;
     CREATE TABLE user_east(
        id INT(10) NOT NULL AUTO_INCREMENT,
        NAME VARBINARY(20) NOT NULL,
        address VARBINARY(20) NOT NULL,
        pv INT(10) DEFAULT 0,
        PRIMARY KEY(id)
        )DEFAULT CHARSET = utf8;

图片描述

2 user表批量插入数据:

   insert into user(table_id,name,address,pv) values
    (1,'张三','东区',44),
    (2,'李四','西区',66),
    (1,'王五','东区',33),
    (2,'吴磊','西区',55),
    (1,'花千骨','东区',55),
    (3,'张小凡','南区',30),
    (3,'白青龙','南区',50);

图片描述

3..按区域找出该区域流量pv最大的记录
group by 默认得到该组出现的第一条记录
图片描述
只要将最大的作为第一条记录即可

SELECT * FROM (SELECT * FROM USER ORDER BY pv DESC) AS u GROUP BY u.table_id;

图片描述
方法很多,我个人认为这种比较简单好理解。
那么如何按照分组取出每组最大的前两项了?(广大朋友们先思考)

4 将user表东区的数据插入用户东区表:
添加user_east表的时候忘记了个字段user_id,这里加上,后面更新的时候要用到

ALTER TABLE user_east ADD COLUMN user_id INT(10) NOT NULL AFTER pv;

图片描述
注意不要加括号。

INSERT INTO user_east(NAME,address,pv,user_id)  SELECT NAME,address,pv,id FROM USER WHERE table_id = 1;

5 批量同步更新user表的pv和对应的user_east的pv字段,都加1.
大家先看一个不是左右链接链接查询的列子:
图片描述
大家可以join left on查询来看,就会有数据了。为空的部分都是null。

UPDATE USER u1,user_east u2 SET u1.pv = u1.pv*10,u2.pv=u1.pv*10 WHERE u2.user_id = u1.id AND u1.table_id = 1;

图片描述
在mysql的官网中,没有找到这样的实列,我在开发的过程中用到了,特别注意的是,set前后根据where过滤后必须是一对一的关系,一对多的更新直接造
成表行级锁锁定,还有就是事务的配置,执行改操作过程并未错误,接下来执行的只是查询语句错误,报错了更新语句事务无法回退的问题。所以用得要慎重。

有错误,请指出来,一起讨论,谢谢。

點(diǎn)擊查看更多內(nèi)容
5人點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消