teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

疑問が変わったので編集しました。

2020/08/12 00:24

投稿

n.yom
n.yom

スコア3

title CHANGED
@@ -1,1 +1,1 @@
1
- SQL ある日付になると値更新したい
1
+ 2つのテーブル結合てアップデートを行いたい
body CHANGED
@@ -1,16 +1,14 @@
1
1
  SQL初心者です。
2
+ データベースはmySQLです。
2
3
  2つのテーブルを組み合わせ、掲載終了日(end_date)が来たとき、公開フラグ(koukai_flg)を0にするという更新を行いたいです。
3
4
 
4
5
  UPDATE TABLE1
6
+ SET koukai_flg = 0
7
+ FROM TABLE1
5
- LEFT JOIN TABLE2
8
+ INNER JOIN TABLE2
6
9
  ON TABLE1.site_id = TABLE2.site_id
7
- SET koukai_flg = 0
8
10
  WHERE koukai_flg = 1
9
- AND end_date < 現在日時
11
+ AND end_date < now()
10
12
 
11
- end_dateのデータ型はDATETIMEです。
12
- ![イメージ説明](4c07cdd50c33dee53b78910d7f0b3b22.png)
13
- 最後の条件文がわからず、悩んでいます。
14
- またほかに間違っいるところがあればご指摘お願したす。
13
+ 2つのテーブルを結合してアップデートを試しみたところうまくかずに困ってす。
15
-
16
14
  どなたかお詳しい方、ご回答よろしくお願いします。

1

誤字があったため訂正しました

2020/08/12 00:24

投稿

n.yom
n.yom

スコア3

title CHANGED
File without changes
body CHANGED
@@ -4,8 +4,8 @@
4
4
  UPDATE TABLE1
5
5
  LEFT JOIN TABLE2
6
6
  ON TABLE1.site_id = TABLE2.site_id
7
- SET koukai_flg = 1
7
+ SET koukai_flg = 0
8
- WHERE koukai_flg = 0
8
+ WHERE koukai_flg = 1
9
9
  AND end_date < 現在日時
10
10
 
11
11
  end_dateのデータ型はDATETIMEです。