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

質問編集履歴

3

コード以外のバックスラッシュを削除

2019/09/12 02:39

投稿

rjunakc
rjunakc

スコア368

title CHANGED
File without changes
body CHANGED
@@ -13,6 +13,6 @@
13
13
  SELECT * FROM `table1` WHERE `key2` = 1
14
14
  ```
15
15
  のような抽出を行ったとします。
16
- しかし、結果の件数が3件未満の場合、「`key1` = 1」も含めた結果で最大3件取得したいと考えています。
16
+ しかし、結果の件数が3件未満の場合、「key1 = 1」も含めた結果で最大3件取得したいと考えています。
17
17
 
18
18
  このような抽出が可能なのでしょうか。

2

テーブル、フィールド名をバックスラッシュで囲む

2019/09/12 02:39

投稿

rjunakc
rjunakc

スコア368

title CHANGED
File without changes
body CHANGED
@@ -10,9 +10,9 @@
10
10
  PRIMARY KEY (`id`)
11
11
  );
12
12
 
13
- SELECT * FROM table1 WHERE key2 = 1
13
+ SELECT * FROM `table1` WHERE `key2` = 1
14
14
  ```
15
15
  のような抽出を行ったとします。
16
- しかし、結果の件数が3件未満の場合、「key1 = 1」も含めた結果で最大3件取得したいと考えています。
16
+ しかし、結果の件数が3件未満の場合、「`key1` = 1」も含めた結果で最大3件取得したいと考えています。
17
17
 
18
18
  このような抽出が可能なのでしょうか。

1

テーブルの定義をCREATE TABLEに変更

2019/09/12 02:38

投稿

rjunakc
rjunakc

スコア368

title CHANGED
File without changes
body CHANGED
@@ -2,11 +2,13 @@
2
2
 
3
3
  例えば、以下のようなテーブルがあった場合、
4
4
  ```MySQL
5
- [table1]
5
+ CREATE TABLE `table1` (
6
- id(int)
6
+ `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
7
- key1(int)
7
+ `key1` INT NOT NULL,
8
- key2(int)
8
+ `key2` INT NOT NULL,
9
- message(varchar)
9
+ `message` VARCHAR(255) NOT NULL,
10
+ PRIMARY KEY (`id`)
11
+ );
10
12
 
11
13
  SELECT * FROM table1 WHERE key2 = 1
12
14
  ```