時間と値のテーブルの中から、
とある日付の時間の値と1日前の日付の値を抜き出し、
「時間、値、値(1日前)」というような表を表示したいです。
以下、例になります。
create table samp1 (dt datetime, differ float);
insert into samp1 (dt,differ) values ("20220603120000",63);
insert into samp1 (dt,differ) values ("20220602120000",62);
select * from samp1;
+---------------------+--------+
| dt | differ |
+---------------------+--------+
| 2022-06-03 12:00:00 | 63 |
+---------------------+--------+
| 2022-06-02 12:00:00 | 62 |
+---------------------+--------+
ここから、
当日の分と1日前の分をそれぞれ抜き出し
select * from samp1 where dt=20220603120000;
+---------------------+--------+
| dt | differ |
+---------------------+--------+
| 2022-06-03 12:00:00 | 63 |
+---------------------+--------+
select DATE_ADD(dt, INTERVAL 1 DAY) as dt,differ as differ_past from samp1 where dt=(20220603120000-INTERVAL 1 DAY);
+---------------------+---------------+
| dt | differ_past |
+---------------------+---------------+
| 2022-06-03 12:00:00 | 62 |
+---------------------+---------------+
上記の2つのSELECT文をもとに、下記のように横方向に結合したいです。
+---------------------+--------+---------------+
| dt | differ | differ_past |
+---------------------+--------+---------------+
| 2022-06-03 12:00:00 | 63 | 62 |
+---------------------+--------+---------------+
どのようにすれば結合できるでしょうか。
join句はこの場合でも適用できるでしょうか。
ご回答いただけますと幸いです。
何卒宜しくお願い致します。
回答2件
あなたの回答
tips
プレビュー