用mysql取另一張表的資料做update可以嗎
在做update的時候,經常會遇到想把a表的值,通過公共欄位連線修改成b表的值
這時候在oracle中,可以使用
update <table1_name> tab1
set <column_name> = (select <column_name> from <table2_name> tab2 where tab1.**=tab2.**);
但是相同的操作在mysql中操作,就會報錯,錯誤大概:
[Err] 1093 – You can’t specify target table ‘tab1’ for update in FROM clause
原因是對同一張表進行了讀寫操作,那麼在mysql可以用join的方式去做update:
update <table1_name>,<table2_name>
set <table1_name>.** = <table2_name>.**
where <table1_name>.** = <table2_name>.**; —–公共欄位
轉載: 程式設計知識庫
相關推薦
用mysql取另一張表的資料做update可以嗎
在做update的時候,經常會遇到想把a表的值,通過公共欄位連線修改成b表的值 這時候在oracle中,可以使用 update <table1_name> tab1 set <column_name> = (select <column_name> from <
Storm讀取Mysql資料庫表寫入Mysql資料庫另一張表
1、spout: package com.TestStorm; import java.io.BufferedReader; import java.io.FileNotFoundException; import java.io.FileReader; import j
MySQL用另一張表的字段值Update本表
conn class tab highlight ble pre true field brush SQL示例: UPDATE TABLE1 a, TABLE2 b SET a.field1 = b. field1 [, a.field2 = b.field2, ...
mysql資料庫的簡單增刪改查,合併欄位,拼接字元操作,用java完成將一張表中的查詢結果合併存入另一張表的指定欄位
首先問題描述:我現在有兩個表,一個表是關鍵詞,一個表是含有關鍵詞的標籤,需要做的就是在關鍵詞表中新建一個標籤欄位,把包含該關鍵詞的全部標籤存入其中。比如關鍵詞是Java,標籤可能有Java開發,Java後臺等。我這裡關鍵詞有4000個,標籤有40000個,我用了小段java程式碼+sql的函式就完成
mysql 如何用一條SQL將一張表裡的資料插入到另一張表 4個例子
1. 表結構完全一樣 insert into 表1 select * from 表2 2. 表結構不一樣(這種情況下得指定列名) insert into 表1 (列名1,列名2,列名3) select 列1,列2,列3 from 表2 3、
怎麼把一張表中某幾列資料插入到另一張表中mysql
兩種方法: 1.表之間的關聯; 2.java程式; 我們這裡主要講的是第二種方法: 第二種方法的優勢在於,如果想要把a表中的資料某幾列資料插入b表中,無需b表中的某列=a表中某列,即使b表中什麼資料都沒有; 那就是mysql語句的增刪改查,比任何操作都簡單,都迅
mysql 獲取一張表中, 另一張表不存在的資料
編寫sql語句中,經常需要編寫獲取一張資料表中不存在與另一張表的資料,相關編寫方法如下: 方法1: 使用not in ,效率低下,在資料較小的情況下可以採用如下編寫 SELECT * FROM a WHERE 1=1 AND a.Id NOT IN( SELECT
MySQL資料庫(表)的匯入匯出(備份和還原) mysql 根據一張表資料更新另一張表
(select * from crawlDocs order by DocCrawlTime desc limit 2000 into outfile '/tmp/weixinData' FIELDS TERMINATED BY ',';) 一般最好是匯出到/tmp目錄下,因為這樣mysql使用者也可以寫入。
Sql Server儲存過程從一個表中抓取資料填充到另一張表中
set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go -- ============================================= -- Author: <alex,,Name> -- Create
mysql 從一張表查資料並插入另一張表
INSERT INTO table1 (table1_field1,table1_field2,...) select table2_filed1,table2_field2,... from table2 where condition1 and condition2
mysql通過對比一張表的資料來修改另一張表兩種sql的對比
1.任務要求: 有兩張表,student1和student2,要求對比student2中的資料,將name相同的student1中的score換成student2中的score,同時保留student1中name不同的score student1(學
mysql將一個表中資料插入另一張表,排重,刪除,匯入
將一個表中資料插入另一張表的語句: insert into 目標表(欄位1,欄位2,欄位3……) select 欄位1,欄位2,欄位3… from 來源表 where 條件1 and 條件2; 排重很簡單,只要在需要排重的欄位前加distinct就可以嘞!eg~ 查詢記錄
SQL Update 觸發器 當本條記錄某個欄位更新後,用該記錄去更新另一張表的資料
思路來源於該部落格 --SqlServer Update觸發器判斷某個欄位的值是否已經更改 https://blog.csdn.net/zhangshufei8001/article/details/51568834 create trigger [tig_update
mysql 查詢表中不包含另一張表的資料的記錄
tabletouser表 submit 表 查詢submit表中的記錄,只需要年份(time)和表名(tab_id) ,但是如果在tabletouser表中存在相同的年份(year)和表(tabletouser)則不能從submit中提取出 開始想從 submit表中得
MySql中用一張表的資料更新另一張表的部分資料
寫在前面 昨天本人用MySql進行簡單的資料分析的時候,遇到了一個問題——用一張表內查詢到的資料更新另一張表的部分資料。由於本人以前基本上沒有用MySql處理過資料,因而在此過程中遇到了諸多問題。先將正確的方法記錄下來,已提醒自己,同時也希望對大家有用。
mysql 查詢一張表沒有存在在另一張表的資料
student表 id name 1張三 2 李四 3王五 4趙四 result表 idscore 180 260 查詢沒有考試成績的學生 方法1: select * from student w
Hive中三張表資料合併成一行,並插入另一張表
知識點:時間戳轉化,當前時間,左連線,查詢的欄位相同可以直接插入另一張表 insert into lqioc_ioc_dw.kkjc select a.*,b.CLL,e.JZT from (select FROM_UNIXTIME(UNIX_TIMESTAMP(),'yyyy
如何將表資料完全複製到另一張表
業務場景 我原本有個測試環境,裡面備份了一個數據庫稱作Db_bak,裡面有張零件表sys_part(p_id,p_name.........)p_id 為自增主鍵,p_id又在別的表中存在,但我的備庫好久沒有更新過,為了防止對應關係錯亂,準備把備庫的表全部
mysql一張表多個欄位關聯另一張表查詢
如下:一張訂單表多個欄位關聯使用者表: 1.連結串列查詢 SELECT cu.id AS 'id',cu.version AS 'version',cu.cid AS 'cid',cu.uid AS 'uid',cu.shopName AS 'shopName',cu.address AS 'addre
mongoose 主鍵關聯的表,自動帶出另一張表的資料
有這樣兩張表 addon_passwordbox_category 'use strict' var mongoose = require('mongoose'), Schema = mongoose.Schema /*** * 加密後的密碼錶 *2018年