欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mysql中如何實(shí)現(xiàn)兩列的值互換

 更新時(shí)間:2024年11月11日 11:34:29   作者:無(wú)敵小肥007  
這篇文章主要來(lái)和大家探討一下Mysql中如何實(shí)現(xiàn)兩列的值互換,文中為大家提供了一些常用的方法,希望對(duì)大家有一定的幫助

Mysql中如何實(shí)現(xiàn)兩列的值互換

如圖,因業(yè)務(wù)要求,需要把某兩列的值互換。

1、第一感覺(jué)此sql應(yīng)該能處理問(wèn)題了

UPDATE students
SET name = other_name,
    other_name = name;

結(jié)果是這樣。。。沒(méi)搞定

2、需要一個(gè)地方存要替換的值,不然兩列搞不定

2.1 加第三列?(能解決,但是看起來(lái)呆呆)

-- 新增列
ALTER TABLE students
ADD COLUMN swap_col VARCHAR(255);

-- 賦值
UPDATE students
SET swap_col = other_name;

UPDATE students
SET other_name = name;

UPDATE students
SET name = swap_col;

-- 刪除列
ALTER TABLE students
DROP COLUMN swap_col;
-- 

2.2 上臨時(shí)表(搞點(diǎn)彎路走走)

-- 創(chuàng)建臨時(shí)表
CREATE TEMPORARY TABLE `students_temp`
(
    `id`         int,
    `name`       varchar(255),
    `other_name` varchar(255),
    INDEX `idx_id` (`id`),
    INDEX `idx_name` (`name`),
    INDEX `idx_other_name` (`other_name`)
);

-- 給臨時(shí)表賦值
INSERT INTO students_temp
SELECT id, name, other_name
FROM students;

-- 聯(lián)表更新
UPDATE students AS target
    INNER JOIN students_temp AS source
    ON target.id = source.id
SET target.name       = source.other_name,
    target.other_name = source.name;

-- 刪除臨時(shí)表
DROP TABLE students_temp;

示例sql

DROP table if exists `students`;

CREATE TABLE `students` (
  `id` int NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `other_name` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
);

INSERT INTO `students` VALUES (1, '張三', '張三1');
INSERT INTO `students` VALUES (2, '李四', '李四1');
INSERT INTO `students` VALUES (3, '王五', '王五1');
INSERT INTO `students` VALUES (4, '趙六', '趙六');
INSERT INTO `students` VALUES (5, '孫七', '孫七');
INSERT INTO `students` VALUES (6, '張三', '張三2');
INSERT INTO `students` VALUES (7, '李四', '李四2');
INSERT INTO `students` VALUES (8, '張三', '張三3');

到此這篇關(guān)于Mysql中如何實(shí)現(xiàn)兩列的值互換的文章就介紹到這了,更多相關(guān)Mysql兩列值互換內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL用戶權(quán)限驗(yàn)證與管理方法詳解

    MySQL用戶權(quán)限驗(yàn)證與管理方法詳解

    這篇文章主要介紹了MySQL用戶權(quán)限驗(yàn)證與管理方法,結(jié)合實(shí)例形式詳細(xì)分析了mysql針對(duì)用戶權(quán)限的驗(yàn)證、查看、收回、修改等各種常用操作技巧,需要的朋友可以參考下
    2018-04-04
  • mysql 5.7.10 winx64安裝配置方法圖文教程(win10)

    mysql 5.7.10 winx64安裝配置方法圖文教程(win10)

    這篇文章主要為大家分享了mysql 5.7.10 winx64安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • MySQL使用MD5加密算法進(jìn)行數(shù)據(jù)加密功能

    MySQL使用MD5加密算法進(jìn)行數(shù)據(jù)加密功能

    在現(xiàn)代的數(shù)據(jù)庫(kù)應(yīng)用中,數(shù)據(jù)的安全性和隱私性變得尤為重要,MySQL作為最流行的關(guān)系型數(shù)據(jù)庫(kù)之一,提供了多種加密功能,允許用戶對(duì)數(shù)據(jù)進(jìn)行加密和解密操作,在這篇文章中,我們將深入探討MySQL的加密功能,并重點(diǎn)介紹如何使用MD5加密算法進(jìn)行加密,需要的朋友可以參考下
    2024-12-12
  • insert和select結(jié)合實(shí)現(xiàn)

    insert和select結(jié)合實(shí)現(xiàn)"插入某字段在數(shù)據(jù)庫(kù)中的最大值+1"的方法

    今天小編就為大家分享一篇關(guān)于insert和select結(jié)合實(shí)現(xiàn)"插入某字段在數(shù)據(jù)庫(kù)中的最大值+1"的方法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-03-03
  • mysql與mysqli的區(qū)別與用法說(shuō)明

    mysql與mysqli的區(qū)別與用法說(shuō)明

    mysql是非持繼連接函數(shù)而mysqli是永遠(yuǎn)連接函數(shù)。
    2010-07-07
  • Mysql?exists用法小結(jié)

    Mysql?exists用法小結(jié)

    這篇文章主要介紹了Mysql?exists用法的的相關(guān)資料,幫助大家更好的理解和使用MySQL,感興趣的朋友可以了解下
    2020-12-12
  • MySQL主從復(fù)制搭建流程分步實(shí)現(xiàn)

    MySQL主從復(fù)制搭建流程分步實(shí)現(xiàn)

    這篇文章主要介紹了MySQL的主從復(fù)制原理詳細(xì)分析,讀寫分離是基于主從復(fù)制來(lái)實(shí)現(xiàn)的。文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-11-11
  • Mysql忘記密碼怎么重置密碼的幾種實(shí)現(xiàn)方法

    Mysql忘記密碼怎么重置密碼的幾種實(shí)現(xiàn)方法

    本文主要介紹了Mysql忘記密碼怎么重置密碼的幾種實(shí)現(xiàn)方法,每種方法都有其適用的情況,根據(jù)具體情況選擇合適的方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-10-10
  • MySQL REVOKE實(shí)現(xiàn)刪除用戶權(quán)限

    MySQL REVOKE實(shí)現(xiàn)刪除用戶權(quán)限

    在 MySQL 中,可以使用 REVOKE 語(yǔ)句刪除某個(gè)用戶的某些權(quán)限,本文就詳細(xì)的來(lái)介紹一下REVOKE 的具體使用方法,感興趣的可以了解一下
    2021-06-06
  • MySQL中查詢當(dāng)前時(shí)間間隔前1天的數(shù)據(jù)

    MySQL中查詢當(dāng)前時(shí)間間隔前1天的數(shù)據(jù)

    實(shí)際項(xiàng)目中我們都會(huì)遇到分布式定時(shí)任務(wù)執(zhí)行的情況,今天通過(guò)本文給大家分享MySQL中查詢當(dāng)前時(shí)間間隔前1天的數(shù)據(jù),查詢sql語(yǔ)句給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧<BR>
    2021-12-12

最新評(píng)論