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

質問編集履歴

6

テーブル定義追加

2021/06/22 02:43

投稿

Place
Place

スコア27

title CHANGED
File without changes
body CHANGED
@@ -13,4 +13,12 @@
13
13
  |3|2021-07-04 11:09:00|2021-07-04 11:19:00|1|
14
14
  |4|2021-05-04 11:09:00|2021-05-04 11:19:00|1|
15
15
  |5|2020-11-04 11:09:00|2020-11-04 11:19:00|2|
16
- |6|2021-05-04 11:09:00|2021-05-04 11:19:00|2|
16
+ |6|2021-05-04 11:09:00|2021-05-04 11:19:00|2|
17
+
18
+
19
+ |Field|Type|Key|
20
+ |:--|:--:|--:|
21
+ |id|int|PRI|
22
+ |start_time|datetime||
23
+ |end_time|datetime||
24
+ |category_id|int||

5

データ修正

2021/06/22 02:43

投稿

Place
Place

スコア27

title CHANGED
File without changes
body CHANGED
@@ -1,13 +1,16 @@
1
1
  以下のようなデータから、
2
+ category_idでグループ分けした上で、
2
3
  start_timeが現在日時(2021-06-22 11:00:00)より後のレコード(id:2,3のようなレコード)があれば、それらのレコードの中で現在日時に近いもの(id: 3のようなレコード)を取得する
3
- なければ、現在日時より前のレコードで現在日時に近いレコード(id: 4のようなレコード)を取得する。
4
+ なければ、現在日時より前のレコードで現在日時に近いレコード(id: 6のようなレコード)を取得する。
4
5
 
5
6
  以上のようなクエリを書きたいのですが、条件分岐を利用してどのように書けばいいかわからないです。
6
7
  教えていただけると助かります。
7
8
 
8
- |id|start_time|end_time|
9
+ |id|start_time|end_time|category_id|
9
- |:--|:--:|--:|
10
+ |:--|:--:|--:|--:|
10
- |1|2020-11-04 11:09:00|2020-11-04 11:19:00|
11
+ |1|2020-11-04 11:09:00|2020-11-04 11:19:00|1|
11
- |2|2021-11-04 11:09:00|2021-11-04 11:19:00|
12
+ |2|2021-11-04 11:09:00|2021-11-04 11:19:00|1|
12
- |3|2021-07-04 11:09:00|2021-07-04 11:19:00|
13
+ |3|2021-07-04 11:09:00|2021-07-04 11:19:00|1|
13
- |4|2021-05-04 11:09:00|2021-05-04 11:19:00|
14
+ |4|2021-05-04 11:09:00|2021-05-04 11:19:00|1|
15
+ |5|2020-11-04 11:09:00|2020-11-04 11:19:00|2|
16
+ |6|2021-05-04 11:09:00|2021-05-04 11:19:00|2|

4

微修正

2021/06/22 02:40

投稿

Place
Place

スコア27

title CHANGED
@@ -1,1 +1,1 @@
1
- せいMYSQL 条件分岐の方法について
1
+ MYSQL 条件分岐の方法について
body CHANGED
File without changes

3

微修正

2021/06/22 02:25

投稿

Place
Place

スコア27

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,5 @@
1
1
  以下のようなデータから、
2
- start_time現在日時(2021-06-22 11:00:00)より後のレコード(id:2,3のようなレコード)があれば、それらのレコードの中で現在日時に近いもの(id: 3のようなレコード)を取得する
2
+ start_time現在日時(2021-06-22 11:00:00)より後のレコード(id:2,3のようなレコード)があれば、それらのレコードの中で現在日時に近いもの(id: 3のようなレコード)を取得する
3
3
  なければ、現在日時より前のレコードで現在日時に近いレコード(id: 4のようなレコード)を取得する。
4
4
 
5
5
  以上のようなクエリを書きたいのですが、条件分岐を利用してどのように書けばいいかわからないです。

2

微修正

2021/06/22 02:24

投稿

Place
Place

スコア27

title CHANGED
@@ -1,1 +1,1 @@
1
- MYSQL 条件分岐の方法について
1
+ せいMYSQL 条件分岐の方法について
body CHANGED
@@ -1,5 +1,5 @@
1
1
  以下のようなデータから、
2
- start_time現在日時より後のレコード(id:2,3のようなレコード)があれば、それらのレコードの中で現在日時に近いもの(id: 3のようなレコード)を取得する
2
+ start_time現在日時(2021-06-22 11:00:00)より後のレコード(id:2,3のようなレコード)があれば、それらのレコードの中で現在日時に近いもの(id: 3のようなレコード)を取得する
3
3
  なければ、現在日時より前のレコードで現在日時に近いレコード(id: 4のようなレコード)を取得する。
4
4
 
5
5
  以上のようなクエリを書きたいのですが、条件分岐を利用してどのように書けばいいかわからないです。

1

微修正

2021/06/22 02:24

投稿

Place
Place

スコア27

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,5 @@
1
1
  以下のようなデータから、
2
- start_time現在日時より後のレコード(id:2,3のようなレコード)があれば、そのレコードで現在日時に近いものを取得する
2
+ start_time現在日時より後のレコード(id:2,3のようなレコード)があれば、それらのレコードの中で現在日時に近いもの(id: 3のようなレコード)を取得する
3
3
  なければ、現在日時より前のレコードで現在日時に近いレコード(id: 4のようなレコード)を取得する。
4
4
 
5
5
  以上のようなクエリを書きたいのですが、条件分岐を利用してどのように書けばいいかわからないです。