最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

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

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

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

UPDATE students
SET name = other_name,
    other_name = name;

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

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

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

-- 新增列
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 上臨時表(搞點彎路走走)

-- 創(chuàng)建臨時表
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`)
);

-- 給臨時表賦值
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;

-- 刪除臨時表
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中如何實現(xiàn)兩列的值互換的文章就介紹到這了,更多相關(guān)Mysql兩列值互換內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL中獲取時間的所有方法小結(jié)

    MySQL中獲取時間的所有方法小結(jié)

    在MySQL數(shù)據(jù)庫開發(fā)中,獲取時間是一個常見的需求,MySQL提供了多種方法來獲取當前日期、時間和時間戳,并且可以對時間進行格式化、計算和轉(zhuǎn)換,本文介紹了一些常用的MySQL時間函數(shù)及其示例,需要的朋友可以參考下
    2024-07-07
  • MYSQL查看表是否被鎖以及解鎖過程

    MYSQL查看表是否被鎖以及解鎖過程

    這篇文章主要介紹了MYSQL查看表是否被鎖以及解鎖過程,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-10-10
  • mysql深度分頁的問題解決

    mysql深度分頁的問題解決

    本文主要介紹了mysql深度分頁的問題解決,解決方案包括子查詢、INNER JOIN延遲關(guān)聯(lián)及標簽記錄法,通過減少回表次數(shù)或避免重復(fù)掃描提升查詢效率,下面就一起來了解一下
    2025-07-07
  • Linux下實現(xiàn)MySQL數(shù)據(jù)備份和恢復(fù)的命令使用全攻略

    Linux下實現(xiàn)MySQL數(shù)據(jù)備份和恢復(fù)的命令使用全攻略

    這篇文章主要介紹了Linux下實現(xiàn)MySQL數(shù)據(jù)備份和恢復(fù)的命令使用全攻略,包括使用Mysqldump和LVM快照以及xtrabackup三種方法,傾力推薦!需要的朋友可以參考下
    2015-11-11
  • Mysql連接本地報錯:1130-host?...?is?not?allowed?to?connect?to?this?MySQL?server解決

    Mysql連接本地報錯:1130-host?...?is?not?allowed?to?connect?t

    這篇文章主要給大家介紹了關(guān)于Mysql連接本地報錯:1130-host?...?is?not?allowed?to?connect?to?this?MySQL?server的解決方法,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-03-03
  • MySQL中json字段的操作方法

    MySQL中json字段的操作方法

    這篇文章主要介紹了MySQL中json字段的操作方法,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下
    2020-11-11
  • MySQL查看數(shù)據(jù)庫、表和索引的容量大小的方法

    MySQL查看數(shù)據(jù)庫、表和索引的容量大小的方法

    在我們平時工作中,如果一個業(yè)務(wù)運行很久了,可能會需要我們?nèi)タ纯催@塊業(yè)務(wù)產(chǎn)生的數(shù)據(jù)量有多大,比如這個業(yè)務(wù)所使用的數(shù)據(jù)庫存儲空間都使用了多少個G了,哪一張數(shù)據(jù)表才是大表,下面整理了一些可以拿來即用的SQL以供小伙伴們參考,需要的朋友可以參考下
    2025-09-09
  • MySQL分支和循環(huán)結(jié)構(gòu)方式

    MySQL分支和循環(huán)結(jié)構(gòu)方式

    在MySQL中,IF函數(shù)用于根據(jù)條件返回不同的值,類似于Java的三目運算符,CASE語句則提供了兩種形式:簡單CASE函數(shù)和搜索CASE函數(shù),分別類似于Java中的switch-case結(jié)構(gòu)和多重if判斷,這些控制流函數(shù)在數(shù)據(jù)庫查詢和數(shù)據(jù)處理中非常有用,可以實現(xiàn)復(fù)雜的邏輯判斷
    2024-10-10
  • 總結(jié)12個MySQL慢查詢的原因分析

    總結(jié)12個MySQL慢查詢的原因分析

    這篇文章主要介紹了總結(jié)12個MySQL慢查詢的原因分析,慢查詢,都是因為沒有加索引。如果沒有加索引的話,會導(dǎo)致全表掃描的,更多相關(guān)內(nèi)容需要的朋友可以參考一下
    2022-08-08
  • 8個MySQL常見的新手SQL錯誤用法詳解

    8個MySQL常見的新手SQL錯誤用法詳解

    在MySQL學(xué)習(xí)和開發(fā)的過程中,新手很容易寫出能跑但有問題的SQL,本文整理了8種最常見的新手SQL錯誤用法,每種錯誤都配詳細的錯誤示例,危害分析,正確寫法和避坑指南,幫助大家從入門開始就養(yǎng)成良好的SQL習(xí)慣
    2026-03-03

最新評論

栾川县| 江北区| 江源县| 汝南县| 乌拉特前旗| 大埔县| 清徐县| 永吉县| 青冈县| 宜春市| 罗定市| 丁青县| 宁河县| 土默特左旗| 陆河县| 乾安县| 观塘区| 大姚县| 乃东县| 双城市| 永年县| 墨脱县| 封丘县| 金昌市| 盐亭县| 芦溪县| 民和| 牙克石市| 乐至县| 永修县| 乡城县| 巩留县| 绵竹市| 香港 | 晋江市| 婺源县| 巴东县| 大安市| 文登市| 冀州市| 韶山市|