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

回答編集履歴

4

修正

2019/02/08 01:11

投稿

m.ts10806
m.ts10806

スコア80888

answer CHANGED
@@ -193,5 +193,10 @@
193
193
  (5, 'e', '名古屋'),
194
194
  (6, 'f', '大阪'),
195
195
  (7, 'g', '名古屋'),
196
- (8, 'g', '福岡');
196
+ (8, 'h', '福岡');
197
- ```
197
+ ```
198
+
199
+ ※ちなみにSQLはDBの種類によって方言があり、このCREATE TABLEも別の環境やDBでそのまま通るとは限りません。私の環境で抽出したものですし(PostgreSQL11 PgAdmin4)
200
+
201
+ 既に回答がついているように開発環境と本番環境含めて全て同じ種類、同じバージョンでされた方がトラブルなく済みます。これはプログラムについても同じですね。
202
+ マイナーバージョンでも1つ違えば使えなくなる機能、非推奨の機能があってそれだけで同じ挙動は期待できません。

3

修正

2019/02/08 01:11

投稿

m.ts10806
m.ts10806

スコア80888

answer CHANGED
@@ -69,7 +69,8 @@
69
69
  | |60|
70
70
 
71
71
  ここで「select句」にsum(得点) as sum_pointとだけ書きました。他の列は選んでいません。
72
+ ※しれっと「 as xxxx」というのを使っていますが、これは「エイリアス」で、要は「別名」ですね。
72
- ※しれっと「 as xxxx」というのを使っていますが、これは「エイリアス」で、要は「別名」ですね。テーブル名が長かった場合に省略した名前だり、今回のように集約関数を使うとそのままsum(得点)というカラム名になるのでわかりやすくなるように別名をつけて扱いやすくしています。
73
+ テーブル名が長かった場合に省略した名前だったり、今回のように集約関数を使うとそのままsum(得点)というカラム名になるのでわかりやすくなるように別名をつけて扱いやすくしています。
73
74
 
74
75
  それはなぜか?
75
76
 
@@ -125,7 +126,7 @@
125
126
  `SELECT "books".* FROM "books" GROUP BY "books"."year"`
126
127
 
127
128
  books.* としています。booksはテーブル名として、
128
- * というのは専門用語だと「全列ワイルド・カード」です。
129
+ `* `というのは専門用語だと「全列ワイルド・カード」です。
129
130
  つまり、「全ての列を選択する」という意味になります。
130
131
 
131
132
  質問本文に「books.idなどというcolumn自体使っていない」とありますし、

2

修正

2019/02/07 22:01

投稿

m.ts10806
m.ts10806

スコア80888

answer CHANGED
@@ -27,7 +27,7 @@
27
27
  CREATE TABLE文を提供することができれば、今回でいえばRubyを実行できる環境がなくても情報の再現確認ができます。
28
28
  できればサンプルデータのINSERT文があればなおよしです。回答のためにデータを考えたり、質問内容からくみ取るのって結構大変ですからね。
29
29
 
30
- れを気にこういったツールは導入、活用してください。
30
+ こういったツールは導入、活用してください。
31
31
 
32
32
  # 前提2
33
33
 

1

修正

2019/02/07 14:55

投稿

m.ts10806
m.ts10806

スコア80888

answer CHANGED
@@ -177,7 +177,7 @@
177
177
  ※ちなみに今回私が回答の際に作ったサンプルのCREATE TABLEとINSERTです。
178
178
  ```sql
179
179
 
180
- CREATE TABLE \"user"
180
+ CREATE TABLE "user"
181
181
  (
182
182
  id integer NOT NULL,
183
183
  name character varying(10) COLLATE pg_catalog."default" NOT NULL,