MySQLの2つ以上のフィールドからの最大値?
2つ以上のフィールドから最大値を知るには、MySQLの関数GREATEST()を使用します。
構文は次のとおりです-
SELECT GREATEST(MAX(yourColumnName1),MAX(yourColumnName2),...............MAX(yourColumnName2) ) from yourTableName;
3つ以上の列を持つテーブルを作成して上記の概念を理解しましょう-
mysql> create table GreatestOfTwoOrMore -> ( -> Marks1 int, -> Marks2 int, -> Marks3 int -> ); Query OK, 0 rows affected (0.57 sec)
これがテーブルにレコードを挿入するためのクエリです-
mysql> insert into GreatestOfTwoOrMore values(23,78,89); Query OK, 1 row affected (0.16 sec) mysql> insert into GreatestOfTwoOrMore values(50,100,150); Query OK, 1 row affected (0.24 sec) mysql> insert into GreatestOfTwoOrMore values(100,500,2000); Query OK, 1 row affected (0.15 sec)
次のクエリを使用して、上に挿入されたすべての値を表示します-
mysql> select *from GreatestOfTwoOrMore;
以下は出力です-
+--------+--------+--------+ | Marks1 | Marks2 | Marks3 | +--------+--------+--------+ | 23 | 78 | 89 | | 50 | 100 | 150 | | 100 | 500 | 2000 | +--------+--------+--------+ 3 rows in set (0.00 sec)
次のクエリを使用して上記の概念を実装し、2つ以上のフィールドから最大の値を取得しましょう。
クエリは次のとおりです-
mysql> SELECT GREATEST(MAX(marks1),MAX(marks2),MAX(marks3)) from GreatestOfTwoOrMore;
以下は出力です-
+-----------------------------------------------+ | GREATEST(MAX(marks1),MAX(marks2),MAX(marks3)) | +-----------------------------------------------+ | 2000 | +-----------------------------------------------+ 1 row in set (0.06 sec)
-
すべての列の値から最後の2つの単語を削除するMySQLクエリ
このために、MySQLのLEFT()関数を使用できます。まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> Name varchar(10) -> ); Query OK, 0 rows affected (0.71 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert into DemoTable values('John'); Query OK, 1 row
-
重複するIDから対応する最大値をフェッチするためのMySQL行の連結?
このために、GROUPBY句を使用できます。最大値を見つけるには、MAX()関数を使用します。まずテーブルを作成しましょう- mysql> create table DemoTable1804 ( Id int, Marks1 int, Marks2 int, Marks3 int ); Query OK, 0 rows affected (0.00