[マニュアル]の検索結果


MySQLでは、INSERT ... SELECTを使用することで1つまたは複数のテーブルからレコードをテーブルに追加できます。
また、SELECTでLIMIT句とORDER BYを使用して上位n件のレコードのみテーブルに追加することもできます。


構文:
INSERT
INTO テーブル
[(カラム, ...)]
SELECT ...

追加前にORDER BYで指定した方法で並べ替えられ、LIMIT句で指定した行数のレコードが追加されます。

例えば、データベースtestのsalesテーブルに10件のレコードが格納されていて、priceの値が低い順に3件のレコードをjunkテーブルに追加する場合は以下のSQL文になります。

INSERT INTO test.junk (product,price) SELECT product,price FROM test.sales ORDER BY price Limit 3;

実際に実行してみると以下のような結果になります。

salesテーブルのデータ:

mysql> select * from test.sales order by price;
+----------+-------------+---------+----------+
| ordernum | product     | price   | quantity |
+----------+-------------+---------+----------+
|        3 | WII         |    4500 | 2        |
|        5 | PS3         |   10000 | 4        |
|        8 | G-SHOCK     |   12000 | 9        |
|        9 | EXILIM      |   14000 | 7        |
|        1 | PS4         |   20000 | 1        |
|        6 | COOLPIX     |   23000 | 1        |
|        7 | amazon fire |   25000 | 6        |
|       10 | GoPro       |   27000 | 3        |
|        4 | iPhone SE   |   50000 | 4        |
|        2 | iPhone 6    | 1000000 | 2        |
+----------+-------------+---------+----------+
10 rows in set (0.00 sec)

実行前のjunkテーブルのデータ:

mysql> select * from test.junk;
Empty set (0.00 sec)

INSERT ... SELECT文を実行:

mysql> INSERT INTO test.junk (product,price) SELECT product,price FROM test.sales ORDER BY price Limit 3;
Query OK, 3 rows affected (0.05 sec)
Records: 3 Duplicates: 0 Warnings: 0

実行後のjunkテーブルのデータ:

mysql> select * from test.junk;
+---------+-------+
| product | price |
+---------+-------+
| WII     |  4500 |
| PS3     | 10000 |
| G-SHOCK | 12000 |
+---------+-------+
3 rows in set (0.00 sec)

参考:
MySQL 5.6 リファレンスマニュアル INSERT ... SELECT 構文


[2591] Posted by kagahiro at 2016/09/30 15:29:37
5 point | Link (3) | Trackback (1) | Comment (4)

MySQLでは、UPDATEでLIMIT句とORDER BYを使用して上位n件のレコードを更新することができます。

更新前にORDER BYで指定した方法で並べ替えられ(ASCは昇順、DESCは降順、省略した場合は昇順)、LIMIT句で指定した行数のレコードが更新されます。

構文:
UPDATE テーブル
SET カラム1={expr1|DEFAULT} [, カラム2={expr2|DEFAULT}] ...
[WHERE 条件]
ORDER BY カラム [ASC | DESC]
LIMIT 行数;


例えば、データベースtestのsalesテーブルに10件のレコードが格納されていて、priceの値が低い順に3件のレコードのquantityに1を加算する場合は以下のSQL文になります。

UPDATE test.sales SET quantity = quantity + 1 ORDER BY price LIMIT 3;

実際に実行してみると以下のような結果になります。

更新前のデータ:

mysql> select * from test.sales order by price;
+----------+-------------+---------+----------+
| ordernum | product     | price   | quantity |
+----------+-------------+---------+----------+
|        3 | WII         |    4500 | 1        |
|        5 | PS3         |   10000 | 3        |
|        8 | G-SHOCK     |   12000 | 8        |
|        9 | EXILIM      |   14000 | 7        |
|        1 | PS4         |   20000 | 1        |
|        6 | COOLPIX     |   23000 | 1        |
|        7 | amazon fire |   25000 | 6        |
|       10 | GoPro       |   27000 | 3        |
|        4 | iPhone SE   |   50000 | 4        |
|        2 | iPhone 6    | 1000000 | 2        |
+----------+-------------+---------+----------+
10 rows in set (0.00 sec)

strong>UPDATE文を実行:

mysql> UPDATE test.sales SET quantity = quantity + 1 ORDER BY price LIMIT 3;
Query OK, 3 rows affected (0.03 sec)
Rows matched: 3 Changed: 3 Warnings: 0

更新後のデータ:

mysql> select * from test.sales order by price;
+----------+-------------+---------+----------+
| ordernum | product     | price   | quantity |
+----------+-------------+---------+----------+
|        3 | WII         |    4500 | 2        |
|        5 | PS3         |   10000 | 4        |
|        8 | G-SHOCK     |   12000 | 9        |
|        9 | EXILIM      |   14000 | 7        |
|        1 | PS4         |   20000 | 1        |
|        6 | COOLPIX     |   23000 | 1        |
|        7 | amazon fire |   25000 | 6        |
|       10 | GoPro       |   27000 | 3        |
|        4 | iPhone SE   |   50000 | 4        |
|        2 | iPhone 6    | 1000000 | 2        |
+----------+-------------+---------+----------+
10 rows in set (0.00 sec)

上位3件のレコードだけquantityが1加算されていることがわかると思います。

参考:
MySQLリファレンスマニュアル 13.2.11 UPDATE 構文

[2590] Posted by kagahiro at 2016/09/30 11:43:12
1 point | Link (3) | Trackback (1) | Comment (0)

アプリケーションのロジックとコンテンツを分離して管理する事を容易にするPHPのためのテンプレートエンジン「Smarty」の日本語公式マニュアル。

Smarty3 マニュアル | Smarty

[2288] Posted by kagahiro at 2013/03/05 14:09:02
0 point | Link (1) | Trackback (0) | Comment (0)

LINE(ライン)は、ユーザー同士が国内・海外、通信キャリアを問わず、無料(パケット通信料は別途必要)で音声通話メールの送受信がを行えるアプリ。iPhone版、Android版、フィーチャーフォン版、PC版、タブレット...
[2215] Posted by kagahiro at 2012/06/12 15:07:59
1 point | Link (16) | Trackback (0) | Comment (1)

Template Toolkit (TT)は、HTML::Templateなど他のテンプレートと比較してより汎用性の高い処理をすることが可能なテンプレートエンジン。出力をサブルーチンに渡したりファイルに出力することもできる。また、テンプ...
[1969] Posted by kagahiro at 2010/07/20 17:32:51
0 point | Link (2) | Trackback (0) | Comment (0)

JM Projectは、日本語オンラインマニュアルパッケージの作成、配布を行なっているプロジェクト。JM Projectで翻訳されたマニュアルの閲覧や検索もできる。JM インデックスJM Projectで翻訳されたマニュアルの一覧。翻...
[1967] Posted by kagahiro at 2010/07/19 13:40:25
0 point | Link (5) | Trackback (0) | Comment (0)

Perl.comは、Perlのホームページ。ソースコード、各種OS別のPerlの実装、マニュアル、モジュール、バグレポート、PerlのFAQ集などがある。Perl.com Home PagePerl-FAQ Part0J(日本語訳)
[1965] Posted by kagahiro at 2010/07/18 11:58:15
0 point | Link (1) | Trackback (0) | Comment (0)

サイトのトップページだけでなく、それ以外のPC向けのコンテンツに携帯からアクセスされた場合も、携帯向けのコンテンツに転送するようにする必要があるのですが、いまいち思い通りになっていません。コンテンツをCG...
[1871] Posted by kagahiro at 2010/05/13 20:56:33
0 point | Link (1) | Trackback (0) | Comment (0)

基本操作から、テーマ、プラグインなど動画付きでわかりやすく説明したWordPressマニュアル。初心者向けの「簡単クイック 基本マニュアル」と、プラグインやテーマを使ってオリジナルサイトを作成したいユーザー向...
[1773] Posted by kagahiro at 2010/03/07 16:01:47
0 point | Link (0) | Trackback (0) | Comment (0)

paperboy&co.のレンタルサーバー「ロリポップ!」「チカッパ!」に人気ブログソフト「WordPress(ワードプレス)」の簡単インストール機能が追加されたとのこと。ロリポップ!レンタルサーバーWordPress簡単イン...
[1752] Posted by kagahiro at 2010/02/24 13:10:17
0 point | Link (5) | Trackback (0) | Comment (0)

  1 2 3 4 5  次へ >


アクセスランキング

今日のアクセスランキング TOP 10

  1. SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (13 PV)
  2. [FX]高値更新・安値更新でエントリー、MT4向け無料スキャルピングEA「1Scalper」#システムトレード (3 PV)
  3. [将棋]将棋実況ユーチューバーのクロノさんが朝日新聞のクレームで棋譜中継を配信中止 (3 PV)
  4. Google Finance(グーグルファイナンス)- リアルタイム株価情報、金融ニュース、日本株 (2 PV)
  5. 完全無料のMT5用ナンピンEA「Nanpin K(ナンピンケイ) MT5」をバージョンアップ(Ver 2.04) (1 PV)
  6. 自作のMT5向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)の一覧 #MT5 #FX (1 PV)
  7. 裁量トレードを半自動化する無料のMT5向け裁量トレード支援ツール(EA)「PositionKeeper MT5」 #FX (1 PV)
  8. Google Finance(グーグルファイナンス)日本版が表示されるようになってますが・・・ (1 PV)
  9. [FX]裁量ポジションの自動トレールや時間決済ができるMT4向け無料ツール(EA)「PositionKeeper」をバージョンアップ (1 PV)
  10. 【将棋実況】ショーダン7 #おすすめの将棋実況チャンネル #YouTube (1 PV)

今月のアクセスランキング TOP 10

  1. SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (2036 PV)
  2. Google Finance(グーグルファイナンス)- リアルタイム株価情報、金融ニュース、日本株 (362 PV)
  3. 安全性重視の完全無料ナンピンマーチンEA「Million Dollar(ミリオンダラー)」 #FX #ゴールド #ビットコイン (346 PV)
  4. [FX]高値更新・安値更新でエントリー、MT4向け無料スキャルピングEA「1Scalper」#システムトレード (307 PV)
  5. 選んではいけないEA #間違いだらけのEA選び (219 PV)
  6. Google News (グーグルニュース)日本版 (196 PV)
  7. YouTube(ユーチューブ)日本版 - 動画共有、ライブ配信 (173 PV)
  8. MT4向け無料ヘッジ(両建て)ツール(EA)「STOPPER FREE」 #自動売買 #FX (167 PV)
  9. 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (155 PV)
  10. SQLiteのSELECT文で上位 (TOP) n件のデータを取得する (109 PV)

アクセス統計

ディレクトリ

関連サイト