[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 構文
更新前に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 構文
MySQLでは、DELETE文でLIMIT句とORDER BYを使用して上位n件のレコードを削除することができます。
削除前にORDER BYで指定した方法で並べ替えられ(ASCは昇順、DESCは降順、省略した場合は昇順)、LIMIT句で指定した行数のレコードが削除されます。
構文:
DELETE FROM テーブル [WHERE 条件]
ORDER BY カラム [ASC | DESC]
LIMIT 行数;
例えば、データベースtestのsalesテーブルに10件のレコードが格納されていて、priceの値が低い順に3件のレコードを削除する場合は以下のSQL文になります。
DELETE FROM test.sales 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.01 sec)
DELETE文を実行:
mysql> DELETE FROM test.sales ORDER BY price LIMIT 3;
Query OK, 3 rows affected (0.08 sec)
削除後のデータ:
mysql> select * from test.sales order by price;
+----------+-------------+---------+----------+
| ordernum | product | price | quantity |
+----------+-------------+---------+----------+
| 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 |
+----------+-------------+---------+----------+
7 rows in set (0.00 sec)
削除前にORDER BYで指定した方法で並べ替えられ(ASCは昇順、DESCは降順、省略した場合は昇順)、LIMIT句で指定した行数のレコードが削除されます。
構文:
DELETE FROM テーブル [WHERE 条件]
ORDER BY カラム [ASC | DESC]
LIMIT 行数;
例えば、データベースtestのsalesテーブルに10件のレコードが格納されていて、priceの値が低い順に3件のレコードを削除する場合は以下のSQL文になります。
DELETE FROM test.sales 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.01 sec)
DELETE文を実行:
mysql> DELETE FROM test.sales ORDER BY price LIMIT 3;
Query OK, 3 rows affected (0.08 sec)
削除後のデータ:
mysql> select * from test.sales order by price;
+----------+-------------+---------+----------+
| ordernum | product | price | quantity |
+----------+-------------+---------+----------+
| 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 |
+----------+-------------+---------+----------+
7 rows in set (0.00 sec)
「いかにんじん(イカ人参)」は、細く切ったイカとニンジンをしょうゆなどで味付けした、北海道の松前漬けのルーツになったともいわれる福島県の郷土料理。年末年始に食べられることが多い。材料は、スルメ、にんじん、塩、砂糖、しょうゆ、酒、みりんなど。
いかにんじん - 福島市ホームページ
いかにんじん | お酒にピッタリ!おすすめレシピ | サッポロビール
いかにんじん - 福島市ホームページ
いかにんじん | お酒にピッタリ!おすすめレシピ | サッポロビール
福島の郷土料理 西野屋「いか人参(いかにんじん) 500g」4-0-112
西野屋食品
amazon.co.jpのカスタマーレビューを見る
powered by amalink
SQLiteのselect文でn件目〜m件目までのデータを取得する場合も、上位n件の場合と同様にLIMIT句を使用しますが、開始位置の指定が必要になります。データは開始位置で指定した値の次のレコードから取得されます。構文...
SQLiteでは、AccessやMicrosoft SQL ServerのようにTOP句を使用して上位n件のデータを取得することはできません。SQLiteのSELECT文で上位n件のデータを取得する場合はLIMIT句を使用します。構文:SELECT カラム名, ....
日銀が今日(2016年4月28日)の金融政策決定会合で、金融政策の現状維持を発表し、追加緩和を見送ったことから東京外国為替市場でドルが急落。1ドル111円台だったドル円は108円台まで下落、円高ドル安の展開となって...
昨年7月に一旦佐野研二郎氏がデザインしたものに決定したと発表されたが、盗作疑惑や選考時に不正があったことを指摘され昨年9月に白紙撤回されていた東京オリンピックのエンブレムが決定された。応募された多数の中...
2年縛りとは携帯電話の契約で、2年間の契約をする代わりに料金を大幅に割り引く一方、途中で解約すると高額な解除料を支払う必要があるというもので、ユーザーが料金プランを2年が経過した後に解約しようと思っても、...
パナマ文書(Panama Papers)とは、タックスヘイブン(租税回避地)の一つであるパナマの法律事務所「Mossack Fonseca(モサック・フォンセカ)」から流出した過去40年の業務内容に関する機密ファイル文書で、最初にド...
火星まで70日で行けたとしても、人間が70日間も宇宙船の中で生活することはできないと思いますが・・・、まあ、夢のある話ではあるかも知れません。 銀河の間を縦横無尽に飛び回るワープドライブ航法はもはやSF映画...
アクセスランキング
今日のアクセスランキング TOP 10
- 2NN 2ちゃんねるニュース速報+ナビ (2 PV)
- Million Dollarのユーロドル(EURUSD)ショート、ポンドドル(GBPUSD)ショート用セットファイル (1 PV)
- MT4向けブレイクアウトEA「NEKONEKO(ネコネコ) FREE」(0.01ロット固定、無料、使用期限無し) (1 PV)
- ようつべ (YouTube) 動画のダウンロードと保存 (1 PV)
今月のアクセスランキング TOP 10
- 2NN 2ちゃんねるニュース速報+ナビ (3293 PV)
- SQLのSELECT文で先頭から上位(TOP)10件のレコードを取得する方法(SQL Server、Oracle、MySQL、PostgreSQL) (528 PV)
- 安全性重視の完全無料ナンピンマーチンEA「Million Dollar(ミリオンダラー)」 #FX #ゴールド #ビットコイン (115 PV)
- 自作のMT4向け無料EA(口座縛り無し、ブローカー縛り無し、使用期限無し)とゴゴジャン出品中の有料EAの一覧 #MT4 (101 PV)
- SQLiteのSELECT文で上位 (TOP) n件のデータを取得する (78 PV)
- 無料のMT4向けナンピンマーチン爆益(爆損)EA「Jipangu(ジパング)」 (72 PV)
- Million Dollar Ver 1.09向けの収益性を重視したゴールド(Gold、XAUUSD)ロングセットファイル (72 PV)
- 仲値トレードが簡単にできる無料EA「NAKANE3 Ver 2.04」 #MT4 (62 PV)
- [FX]裁量ポジションを簡単に管理できるMT4向け無料の裁量補助EA「PositionKeeper」 (55 PV)
- 2chまとめサイト - 痛いニュース(ノ∀`) (48 PV)
アクセス統計
ディレクトリ
関連サイト