0
エントリを持つ列がいくつか含まれているテーブルAがあります。列1には、表内で一意のキャンペーン名が表示されます。今度は、キャンペーン名が別のテーブル(テーブルB)に存在するときに、別の列の列の最後の2文字を変更したいとします(キャンペーン名がテーブルBにない場合、何も起こりません) 。 「新しい」2つの最後の文字は、表Bの列2の文字列の一部です(1はキャンペーン名です)。 - >どうすればいいですか?エントリーが別のテーブルに存在するときに、列内の文字列の最後の2文字を変更します。
Here's例:
例えばAが含まれているテーブルの場合:
|col1 ||col2 |
+--------------------------------+---------------+------
|20161512_NL_Luxus_1_DE ||NewsletterDE |
|20161217_LC_YoBirthdayNo_A_CH ||LifecyclemailUK|
|20161512_NL_Luxus_1_DE ||BKMailCH |
|20161512_NL_SDT_4_DE ||LifecyclemailDE|
|20170117_SV_YoBirthdayYes_A_DE ||BKMailDE |
|20161512_NL_SDT_4_DE ||NewsletterFR |
とテーブルBが含まれる:
|col1 ||col2 |
+--------------------------------+---------------+------
|20161217_LC_YoBirthdayNo_A_CH ||LifecyclemailCH|
|20161512_NL_SDT_4_DE ||NewsletterDE |
を私は、テーブルAを変更しますクエリをしたいです〜へ:
|col1 ||col2 |
+--------------------------------+---------------+------
|20161512_NL_Luxus_1_DE ||NewsletterDE |
|20161217_LC_YoBirthdayNo_A_CH ||LifecyclemailCH|
|20161512_NL_Luxus_1_DE ||BKMailCH |
|20161512_NL_SDT_4_DE ||LifecyclemailDE|
|20170117_SV_YoBirthdayYes_A_DE ||BKMailDE |
|20161512_NL_SDT_4_DE ||NewsletterDE |
私がこれまでに得たもの、この:
UPDATE table A INNER JOIN table B ON A.col1 = B.col1 SET A.col2 = CONCAT(SUBSTRING(A.col2), RIGHT(B.col2,2));
- >しかし、これは、事前に....正しく
おかげで動作していません!