解决MySQLの更新:あなたはFROM句に更新のためのターゲット表を指定することはできません

MySQLではあなたが意味する句エラーからの更新のためのターゲット表を指定することはできません、あなたは同じテーブルに特定の値を選択し、(同じ文で)テーブルを更新することはできません。たとえば、次のSQL:

更新 
    tms_jyxx_mx 
SETの 
    gg_dm =  ' 1004 '  
WHERE  
    jyxx_id 
SELECT 
        t1.jyxx_id AS jyxx_id
     FROM 
        tms_jyxx T1、
        tms_jyxx_mx T2 
    WHERE 
        t1.sjmc =  ' 保定Baigou地下鉄駅レイ明' 
    AND t1.jyxx_id = t2.jyxx_id
     AND T2を。 ljqh =  ' 14 ' 
     t2.jysj > =  ' 2019年4月30日10時17分22秒' 
     t2.jysj<=  ' 2019年9月26日23時59分59秒' 
    ORDER  BY 
        t2.jysjの
    DESC

次への行で:

更新 
    tms_jyxx_mx 
SET  
    gg_dm =  ' 1004 '  
WHEREは 
    jyxx_id 
SELECT 
        tt.jyxx_id 
    からSELECT 
        t1.jyxx_id AS jyxx_id
     FROM 
        tms_jyxx T1、
        tms_jyxx_mx T2 
    WHERE 
        t1.sjmc =  ' 保定Baigou地下鉄駅レイ明' 
    AND t1.jyxx_id =をt2.jyxx_id
     AND t2.ljqh =  ' 14 ' 
     t2.jysj > =  "2019年4月30日10時17分22秒' 
    AND t2.jysj <=  ' 2019年9月26日午前23時59分59秒
    ORDER  BY 
        t2.jysjの
    DESC)TT)

それは、結果を選択し、テーブルの中央で再びそれを選択し、これにエラーを回避します。この問題は、この問題を示さないだけのMySQL、MSSQLとOracleで発生することに注意してください。

おすすめ

転載: www.cnblogs.com/chuanqi1995/p/11589481.html