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

MySQL數(shù)據(jù)庫(kù)同時(shí)查詢更新同一張表的方法

 更新時(shí)間:2017年09月19日 15:52:08   投稿:mdxy-dxy  
這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)同時(shí)查詢更新同一張表的方法,需要的朋友可以參考下

在平常的項(xiàng)目中,經(jīng)常會(huì)碰到這樣的問(wèn)題:我需要在一張標(biāo)中同時(shí)更新和查詢出來(lái)的數(shù)據(jù)。例如:有如下圖一張表數(shù)據(jù),現(xiàn)在需要更新操作為:把status=1的name值更新為id=2的name值

這里寫圖片描述

通常情況下我們會(huì)想到如下語(yǔ)句來(lái)實(shí)現(xiàn)這個(gè)需求:

UPDATE tb_testSET NAME = ( SELECT NAME FROM tb_test WHERE id= 2)WHERE `status` = 1

結(jié)果卻報(bào)錯(cuò),報(bào)錯(cuò)信息為:You can't specify target table 'tb_test' for update in FROM clause,不能在同一語(yǔ)句中update,select同一張表。不能在同一張表操作,換個(gè)思路,如果不是同一張表的話應(yīng)該就是可以的。于是,可以把select出來(lái)的結(jié)果當(dāng)成一個(gè)臨時(shí)的中間表,從中間表中獲取想要的更新相關(guān)的數(shù)據(jù)。于是,上面的更新語(yǔ)句可以更改成下面這樣子:

UPDATE tb_testSET NAME = (select name from ( SELECT NAME FROM tb_test WHERE id = 2) as t)WHERE `status` = 1

這樣就可以完成題目中的操作。經(jīng)歷的大致過(guò)程為:查詢出id=2的數(shù)據(jù)作為中間表t;set的數(shù)據(jù)從t表中查詢出來(lái);做更新操作這樣就不是在同一語(yǔ)句中update,select同一張表了,因?yàn)檫@相當(dāng)與在操作兩張表,tb_test和中間表t。最后的結(jié)果如下圖:

這里寫圖片描述

相關(guān)文章

  • MySQL?如何將查詢結(jié)果導(dǎo)出到文件(select?…?into?Statement)

    MySQL?如何將查詢結(jié)果導(dǎo)出到文件(select?…?into?Statement)

    我們經(jīng)常會(huì)遇到需要將SQL查詢結(jié)果導(dǎo)出到文件,以便后續(xù)的傳輸或數(shù)據(jù)分析的場(chǎng)景,本文就MySQL中select…into的用法進(jìn)行演示,感興趣的朋友跟隨小編一起看看吧
    2024-08-08
  • MySQL中慢SQL優(yōu)化的不同方式介紹

    MySQL中慢SQL優(yōu)化的不同方式介紹

    慢 SQL 的優(yōu)化,主要從兩個(gè)方面考慮,SQL 語(yǔ)句本身的優(yōu)化,以及數(shù)據(jù)庫(kù)設(shè)計(jì)的優(yōu)化,下面小編就來(lái)給大家介紹一下有哪些方式可以優(yōu)化慢 SQL吧
    2025-03-03
  • MySql match against工具詳細(xì)用法

    MySql match against工具詳細(xì)用法

    在MySQL中,MATCH……AGAINST是全文索引(Full-Text index)的查詢語(yǔ)法,它允許你對(duì)文本進(jìn)行高效的全文搜素,支持自然語(yǔ)言搜索和布爾搜索模式,下面給大家介紹MySql match against工具詳細(xì)用法,感興趣的朋友一起看看吧
    2025-04-04
  • MySQL中修改庫(kù)名的操作教程

    MySQL中修改庫(kù)名的操作教程

    這篇文章主要介紹了MySQL中修改庫(kù)名的操作教程,是MySQL學(xué)習(xí)當(dāng)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-05-05
  • Linux下MySQL5.7.18 yum方式從卸載到安裝過(guò)程圖解

    Linux下MySQL5.7.18 yum方式從卸載到安裝過(guò)程圖解

    這篇文章主要介紹了Linux下MySQL5.7.18 yum方式從卸載到安裝過(guò)程圖解,需要的朋友可以參考下
    2017-06-06
  • MySQL創(chuàng)建唯一索引時(shí)報(bào)錯(cuò)Duplicate?entry?*?for?key問(wèn)題

    MySQL創(chuàng)建唯一索引時(shí)報(bào)錯(cuò)Duplicate?entry?*?for?key問(wèn)題

    這篇文章主要介紹了MySQL創(chuàng)建唯一索引時(shí)報(bào)錯(cuò)Duplicate?entry?*?for?key問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • MySQL?5.7中NULL與‘?‘空字符值的多維度分析(詳解)

    MySQL?5.7中NULL與‘?‘空字符值的多維度分析(詳解)

    在數(shù)據(jù)庫(kù)設(shè)計(jì)和開(kāi)發(fā)過(guò)程中,正確理解和使用NULL值對(duì)于確保數(shù)據(jù)質(zhì)量和查詢效率至關(guān)重要,本文將從多個(gè)維度對(duì)NULL值進(jìn)行深入分析,并與空字符串''以及其他控制進(jìn)行對(duì)比,旨在為讀者提供一個(gè)全面而清晰的理解,感興趣的朋友跟隨小編一起看看吧
    2024-12-12
  • MySQL 給用戶添加 ALTER VIEW 的權(quán)限的步驟

    MySQL 給用戶添加 ALTER VIEW 的權(quán)限的步驟

    在 MySQL 中,用戶權(quán)限的管理是非常重要的,以確保數(shù)據(jù)庫(kù)安全性和數(shù)據(jù)完整性,這篇文章主要介紹了MySQL 給用戶添加 ALTER VIEW 的權(quán)限,需要的朋友可以參考下
    2024-05-05
  • mysql中EXISTS和IN的使用方法比較

    mysql中EXISTS和IN的使用方法比較

    這篇文章主要給大家介紹了關(guān)于mysql中EXISTS和IN使用方法比較的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • MySQL對(duì)limit查詢語(yǔ)句的優(yōu)化方法

    MySQL對(duì)limit查詢語(yǔ)句的優(yōu)化方法

    這篇文章主要介紹了MySQL對(duì)limit查詢語(yǔ)句的優(yōu)化方法,分別講解了offset參數(shù)比較小和offset參數(shù)比較大的時(shí)候,如何優(yōu)化查詢語(yǔ)句,需要的朋友可以參考下
    2014-07-07

最新評(píng)論

岳普湖县| 平原县| 汕尾市| 昌吉市| 广平县| 大姚县| 灌阳县| 锡林郭勒盟| 顺义区| 平顶山市| 无极县| 柳州市| 体育| 罗源县| 塔城市| 达日县| 江都市| 神池县| 友谊县| 重庆市| 沁水县| 中阳县| 龙南县| 治县。| 博湖县| 太康县| 靖宇县| 历史| 岑巩县| 新源县| 双牌县| 普陀区| 临猗县| 柯坪县| 邹城市| 赤峰市| 简阳市| 汝阳县| 唐海县| 嘉祥县| 洛川县|