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


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) (7 PV)
  2. [将棋]第75期名人戦第2局はポナンザ流早繰り銀で攻めた佐藤天彦名人が稲葉陽八段に勝ち1勝1敗に (2 PV)
  3. UNIX 書籍 (1 PV)
  4. Google Finance(グーグルファイナンス)- リアルタイム株価情報、金融ニュース、日本株 (1 PV)
  5. Plagger (1 PV)
  6. ウィルコム、「Access P-BERRY(アクセス ピーベリー)」サービスを開始 (1 PV)
  7. Googleが過去最大級のアップデートを発表―セマンティック検索実現へ大きく一歩踏み出す (1 PV)
  8. メルクマニュアル 日本語版 (1 PV)
  9. 確定申告(かくていしんこく)とは (1 PV)
  10. 私的録音補償金制度 (1 PV)

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

  1. SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (135 PV)
  2. 2NN 2ちゃんねるニュース速報+ナビ (57 PV)
  3. 究極の爆益ゴールドナンピンマーチンEA「Extreme(エクストリーム)」 MT4向け (45 PV)
  4. 爆益を狙うハイリスクハイリターンのナンピンマーチンEA「Hyper Dollar MT5」 (34 PV)
  5. 仲値トレードが簡単にできる無料EA「NAKANE3」 #MT4 (33 PV)
  6. Google Finance(グーグルファイナンス)- リアルタイム株価情報、金融ニュース、日本株 (33 PV)
  7. ドル円(USDJPY)で爆益を狙うハイリスクハイリターンのMT4向けナンピンマーチンEA「Hyper Dollar」 (29 PV)
  8. 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (26 PV)
  9. Google(グーグル)検索 日本版 - ウェブ、画像の検索 (26 PV)
  10. 「国家非常事態」トランプ米大統領が日本に24%の関税を課すと表明 日経平均株価が急落 (25 PV)

アクセス統計

ディレクトリ

関連サイト