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

回答編集履歴

3

追記

2019/05/14 08:55

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -5,4 +5,15 @@
5
5
  on tgt.ymd = src.ymd and tgt.kigyo_cd=src.kigyo_cd
6
6
  where tgt.ymd between '2019-04-16 00:00:00' and '2019-4-23 00:00:00'
7
7
  ```
8
- [UPDATE (307P)](http://infocenter.sybase.com/help/topic/com.sybase.infocenter.dc01143.1520/pdf/iqrefso_ja.pdf)
8
+ [UPDATE (307P)](http://infocenter.sybase.com/help/topic/com.sybase.infocenter.dc01143.1520/pdf/iqrefso_ja.pdf)
9
+
10
+ 追記
11
+ --
12
+ 相関サブクエリーとした場合
13
+ ```SQL
14
+ update tableA tgt set
15
+ receipt_key=(
16
+ select receipt_key from tableB where ymd=tgt.ymd and kigyo_cd=tgt.kigyo_cd
17
+ )
18
+ where ymd between '2019-04-16 00:00:00' and '2019-4-23 00:00:00'
19
+ ```

2

追記

2019/05/14 08:55

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -4,4 +4,5 @@
4
4
  from tableA tgt join tableB src
5
5
  on tgt.ymd = src.ymd and tgt.kigyo_cd=src.kigyo_cd
6
6
  where tgt.ymd between '2019-04-16 00:00:00' and '2019-4-23 00:00:00'
7
- ```
7
+ ```
8
+ [UPDATE (307P)](http://infocenter.sybase.com/help/topic/com.sybase.infocenter.dc01143.1520/pdf/iqrefso_ja.pdf)

1

訂正

2019/05/14 08:39

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -1,7 +1,7 @@
1
1
  別にわざわざ連結した項目生成する必要は無いですし、生成などしない方がインデックスがある場合は高速です。
2
2
  ```SQL
3
- update tableA tgt set receipt_key=src.receipt_key
3
+ update tableA set tgt.receipt_key=src.receipt_key
4
- from tableB src
4
+ from tableA tgt join tableB src
5
- where tgt.ymd = src.ymd and tgt.kigyo_cd=src.kigyo_cd
5
+ on tgt.ymd = src.ymd and tgt.kigyo_cd=src.kigyo_cd
6
- and tgt.ymd between '2019-04-16 00:00:00' and '2019-4-23 00:00:00'
6
+ where tgt.ymd between '2019-04-16 00:00:00' and '2019-4-23 00:00:00'
7
7
  ```