MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLのテーブル全体の結果の総数を制限しますか?


このために、LIMITの概念とともにUNIONALLを使用できます。この例では、3つのテーブルを作成します。

最初のテーブルを作成しましょう-

mysql> create table demo3
−> (
−> value int
−> );
Query OK, 0 rows affected (1.39 sec)

挿入コマンド-

を使用して、いくつかのレコードをテーブルに挿入します。
mysql> insert into demo3 values(10);
Query OK, 1 row affected (0.13 sec)

mysql> insert into demo3 values(20);
Query OK, 1 row affected (0.08 sec)

mysql> insert into demo3 values(30);
Query OK, 1 row affected (0.08 sec)

selectステートメントを使用してテーブルのレコードを表示する-

mysql> select *from demo3;

これにより、次の出力が生成されます-

+-------+
| value |
+-------+
| 10    |
| 20    |
| 30    |
+-------+
3 rows in set (0.00 sec)

2番目のテーブルを作成するためのクエリは次のとおりです-

mysql> create table demo4
−> (
−> value1 int
−> );
Query OK, 0 rows affected (2.10 sec)

挿入コマンド-

を使用して、いくつかのレコードをテーブルに挿入します。
mysql> insert into demo4 values(40);
Query OK, 1 row affected (0.10 sec)

mysql> insert into demo4 values(10);
Query OK, 1 row affected (0.09 sec)

mysql> insert into demo4 values(60);
Query OK, 1 row affected (0.17 sec)

selectステートメントを使用してテーブルのレコードを表示する-

mysql> select *from demo4;

これにより、次の出力が生成されます-

+--------+
| value1 |
+--------+
| 40     |
| 10     |
| 60     |
+--------+
3 rows in set (0.00 sec)

これが3番目のテーブルを作成するためのクエリです。

mysql> create table demo5
−> (
−> value2 int
−> );
Query OK, 0 rows affected (2.13 sec)

挿入コマンド-

を使用して、いくつかのレコードをテーブルに挿入します。
mysql> insert into demo5 values(100);
Query OK, 1 row affected (0.09 sec)
mysql> insert into demo5 values(60);
Query OK, 1 row affected (0.14 sec)
mysql> insert into demo5 values(50);
Query OK, 1 row affected (0.10 sec)

selectステートメントを使用してテーブルのレコードを表示する-

mysql> select *from demo5;

これにより、次の出力が生成されます-

+--------+
| value2 |
+--------+
| 100    |
| 60     |
| 50     |
+--------+
3 rows in set (0.00 sec)

以下は、テーブル全体の結果の総数を制限するためのクエリです-

mysql> select tbl.*
−> from ((select * from demo3 ORDER BY value DESC LIMIT 2
−> ) UNION ALL
−> (select * from demo4 ORDER BY value1 DESC LIMIT 2
−> ) UNION ALL
−> (select * from demo5 ORDER BY value2 DESC LIMIT 2
−> )
−> ) tbl
−>
−> LIMIT 2;

これにより、次の出力が生成されます-

+-------+
| value |
+-------+
| 30    |
| 20    |
+-------+
2 rows in set (0.00 sec)

  1. データベース内のテーブルの数を表示するためのMySQLクエリとは何ですか?

    たとえば、ここではWEBデータベースを使用しています。データベースWEBでテーブルの数を見つける必要があります。これには、MySQLのINFORMATION_SCHEMA.TABLESを使用します。 以下は、テーブルの数を表示するためのクエリです- mysql> select count(table_name) as TotalNumberOfTablesInWebDatabase    -> from information_schema.tables    -> where table_schema='web';

  2. MySQLの結果をマージする方法は?

    マージするには、単純な結合を使用します。以下は構文です- select aliasName1.yourColumnName1, aliasName1.yourColumnName2, . . .N aliasName2.yourColumnName1 from yourTableName1 aliasName1 . . . N join yourTableName2 aliasName2 on yourCondition; テーブルを作成しましょう- mysql> create table demo8 −> ( −> id int, −&