質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Amazon Redshift

Amazon Redshiftは、Amazon社が提供する 高速かつ完全マネージド型でペタバイト規模の クラウドデータウェアハウスサービスです。

Q&A

解決済

1回答

3341閲覧

SQLでのLOOP、変数、配列の使い方について。

退会済みユーザー

退会済みユーザー

総合スコア0

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Amazon Redshift

Amazon Redshiftは、Amazon社が提供する 高速かつ完全マネージド型でペタバイト規模の クラウドデータウェアハウスサービスです。

0グッド

0クリップ

投稿2019/06/21 13:26

編集2019/06/21 16:43
namedate
aaa2018/5/21
bbb2018/5/21
ccc2018/5/21
ddd2018/5/21
eee2018/5/21
fff2018/5/22
ggg2018/5/22
hhh2018/5/22
iii2018/5/22
jjj2018/5/22

上記のようなテーブルがあり、SQLを用いてdateごとに2つずつ値を取得して結合し、下記のようなテーブルを作成したいと考えております。
(これはサンプルデータで、本来は日付ごとに10000行あり、そのデータの最初の100件を結合するというコードを描きたいのですが、今回は単純化しています。)

namedate
aaa2018/5/21
bbb2018/5/21
fff2018/5/22
ggg2018/5/22

このようなテーブルを作成するためのコードをSQLを用いて描きたいのですがどのように書けば良いのでしょうか?擬似コードとしては以下のようなものになるかと想定しています。
アドバイスよろしくお願いします。

sql

1dates = select DISTINCT date from table order by date ASC <- 存在する日付を取得 2databases <- 空のテーブルを定義 3//日付ごとにマッチするものを取ってきて最初の2個を空のテーブルに結合していく 4for date in dates 5databases 6union 7select * from table where date = date limit 2 8database ←それぞれの日付のデータが2こずつ

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sazi

2019/06/21 16:42

MySQLでしたよね? タグを付けて下さい。SQLだけだと限定されません。
退会済みユーザー

退会済みユーザー

2019/06/21 16:44

申し訳ございません。修正しました。
sazi

2019/06/21 16:46

ところで、なぜ、postgresとMySQLの2種類必要なんですか?
guest

回答1

0

ベストアンサー

SQLを用いてdateごとに2つずつ値を取得

何順で2つ取得するかを決めないといけません

結合し

結合している様子が見えません。質問者さんのいう「結合」とは何を指すのでしょうか?

なお、日付で1つしかレコードがない場合は、1つだけ表示するのでしょうか?
それとも2つないので表示しないのでしょうか?

方法論

  • 適当なユニークなソート順を担保するカラムを設定し、上位2レコードずつ抽出する
  • プロシージャで処理する

のいずれかが妥当だと思います

投稿2019/06/25 02:29

yambejp

総合スコア114572

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問