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

MySQL Selectで列の値を2回表示しますか?


concat()を使用できます。まずテーブルを作成しましょう-

mysql> create table DemoTable
(
   Value int
);
Query OK, 0 rows affected (0.73 sec)

挿入コマンド-

を使用して、テーブルにいくつかのレコードを挿入します
mysql> insert into DemoTable values(100);
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable values(200);
Query OK, 1 row affected (0.08 sec)
mysql> insert into DemoTable values(100);
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable values(200);
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values(200);
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable values(100);
Query OK, 1 row affected (0.30 sec)

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

mysql> select *from DemoTable;

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

+-------+
| Value |
+-------+
|   100 |
|   200 |
|   100 |
|   200 |
|   200 |
|   100 |
+-------+
6 rows in set (0.00 sec)

以下は、MySQLで列の値を2回表示するためのクエリです-

mysql> select concat(Value,'~',Value) from DemoTable group by Value;

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

+-------------------------+
| concat(Value,'~',Value) |
+-------------------------+
|                 100~100 |
|                 200~200 |
+-------------------------+
2 rows in set (0.00 sec)

  1. MySQLでn番目に高い値を選択します

    MySQLでn番目に高い値を選択するには、次の構文を使用します- select distinct(yourColumnName) from yourTableName order by yourColumnName DESC limit (NthValue-1),1; まずテーブルを作成しましょう- mysql> create table DemoTable1594    -> (    -> Marks int    -> ); Query OK, 0 rows affected (0.49 sec) 挿

  2. MySQLで選択した値が「0」の場合は別の列から選択しますか?

    これには、MySQLでIF()を使用します。構文は次のとおりです- select IF(yourColumnName1=0,yourColumnName2,yourColumnName1) as anyAliasName from yourTableName; テーブルを作成しましょう- mysql> create table demo30 −> ( −> id int not null auto_increment primary key, −> value int, −> original_value int