ホームページ データベース mysql チュートリアル MySQL でよく使われる関数のまとめ

MySQL でよく使われる関数のまとめ

Feb 17, 2021 am 10:04 AM

MySQL でよく使われる関数のまとめ

#無料学習の推奨事項: #mysql ビデオ チュートリアル

#これこの記事では、MySQL の関数メソッドについて説明しており、一般的な MySQL メソッドをすべてカバーしています。この記事のディレクトリ構造は次のとおりです。右側のディレクトリをクリックして、必要に応じて検索できます:

    1. 数値関数
  • 2. 文字列関数
  • #3 , 日付関数
  • ##4. MySQL の高度な関数
  • ## (1) 数値関数

##1 . ABS(x) 戻り値 x

SELECT ABS(-1);
---- 返回1
ログイン後にコピー

2 の絶対値 AVG(式) は式の平均を返します、式はフィールドです

#
SELECT AVG(age) FROM student;
ログイン後にコピー


MySQL でよく使われる関数のまとめ3. CEIL(x)/CEILING(x) は x

SELECT CEIL(1.5);
SELECT CEILING(1.5);   
---- 返回2
ログイン後にコピー
MySQL でよく使われる関数のまとめ## 以上の最小の整数を返します#4.FLOOR(x ) x

SELECT FLOOR(1.5); 
---- 返回1
ログイン後にコピー
5 以下の最大の整数を返します。EXP(x) e の x

SELECT EXP(3);
---- 计算 e 的三次方,返回20.085536923188
ログイン後にコピー
# 乗を返します。 ##6, GREATEST (expr1, expr2, expr3, …) リスト内の最大値を返します
SELECT GREATEST(3, 12, 34, 8, 25);
---- 返回以下数字列表中的最大值34
ログイン後にコピー

7, LEAST(expr1, expr2, expr3, …)リスト内の最小値

SELECT LEAST(3, 12, 34, 8, 25);
---- 返回以下数字列表中的最小值3
ログイン後にコピー

8。LN は数値

SELECT LN(2);
---- 返回 2 的自然对数:0.6931471805599453
ログイン後にコピー

9 の自然対数を返します。LOG(x) は自然対数 (e を底とする対数)

SELECT LOG(20.085536923188);
---- 返回 3
ログイン後にコピー

10.MAX(式) フィールド式の最大値を返します

SELECT MAX(age) AS maxAge FROM Student;
---- age最大值
ログイン後にコピー

11.MIN (式) フィールド式の最大値を返します 最大値

SELECT MIN(age) AS minAge FROM Student;
---- age最小值
ログイン後にコピー

12. POW(x,y)/POWER(x,y) は x の y 乗を返します

SELECT POW(2,3);
SELECT POWER(2,3);
---- 返回2 的 3 次方:8
ログイン後にコピー

13 、RAND() は 0 から 1 までの乱数を返します

SELECT RAND();
---- 返回 0 到 1 的随机数,若()里面有数字,RAND(x),x相同时,返回值相同
ログイン後にコピー

14、ROUND(x) は x## に最も近い整数を返します#

SELECT ROUND(1.23456);
---- 返回 1
ログイン後にコピー

15 、 SIGN(x) は x の符号を返します。x は負の数 0、正の数はそれぞれ -1、0、1 を返します

SELECT SIGN(-10);
---- 返回 -1
ログイン後にコピー

16. SQRT(x) は x# の平方根を返します ##

SELECT SQRT(25);
---- 返回5
ログイン後にコピー

17. SUM(expression) は指定されたフィールドの合計を返します

SELECT SUM(age) AS totalAage FROM Student;
---- 返回age的总和
ログイン後にコピー
#18. TRUNCATE(x,y) は値 x を小数点まで返します 最後の y 桁の値 (ROUND との最大の違いは四捨五入されないことです)

SELECT TRUNCATE(1.23456,3);
---- 返回1.234
ログイン後にコピー
(2) 文字列関数

1、文字列 s

SELECT ASCII('AB');
---- 返回A的ASCII码值:65
ログイン後にコピー
2 の最初の文字の ASCII コードを返します。 LENGTH/CHAR_LENGTH(s)/CHARACTER_LENGTH(s) は、文字列 s

SELECT LENGTH('1234');
---- 返回4
ログイン後にコピー
3 の文字数を返します。CONCAT(s1,s2…sn) 文字列 s1、s2 およびその他の文字列は次のとおりです。 1 つの文字列に結合されます

SELECT CONCAT('hel','llo');
---- 返回hello
ログイン後にコピー
4.FIND_IN_SET( s1, s2) は、文字列 s2 内の s1 に一致する文字列の位置を返します

SELECT FIND_IN_SET("c", "a,b,c,d,e");
---- 返回3
ログイン後にコピー
5 FORMAT(x,n) 関数は、数値 x を「#, .##」にフォーマットし、x を小数点以下 n 桁に保ち、最後の桁

SELECT FORMAT(250500.5634, 2); 
---- 返回250,500.56
ログイン後にコピー
を四捨五入できます。

6, INSERT(s1,x,len,s2) 文字列 s2 の置換 s1 の x 位置は、長さ len

SELECT INSERT("google.com", 1, 6, "runnob");
---- 返回runoob.com
ログイン後にコピー

7 の文字列を開始します。 LOCATE(s1,s)文字列 s

SELECT LOCATE('st','myteststring');
---- 返回5
ログイン後にコピー

8 から s1 の開始位置を取得します。LCASE(s)/LOWER(s) は文字列 s のすべての文字を小文字に変換します

SELECT LOWER('RUNOOB');
---- 返回runoob
ログイン後にコピー

9, UCASE(s)/UPPER(s) 文字列 s のすべての文字を大文字に変換します

SELECT UCASE('runoob');
---- 返回RUNOOB
ログイン後にコピー

10. TRIM(s) でスペースを削除します。文字列 s

SELECT TRIM('    RUNOOB    ');
---- 返回RUNOOB
ログイン後にコピー

11 の先頭と末尾。LTRIM(s) は、文字列 s

SELECT LTRIM('    RUNOOB    ');
---- 返回 ’RUNOOB   ‘
ログイン後にコピー

12 の先頭にあるスペースを削除します。 RTRIM(s) は、文字列 s

SELECT RTRIM('    RUNOOB    ');
---- 返回 ’    RUNOOB‘
ログイン後にコピー

13 の末尾のスペースを削除します。 SUBSTR(s, start, length) は、文字列 s の開始位置から長さ length の部分文字列をインターセプトします。

SELECT SUBSTR("RUNOOB", 2, 3) AS ExtractString;
---- 从字符串 RUNOOB 中的第 2 个位置截取 3个 字符,返回UNO
ログイン後にコピー

14.SUBSTR/ SUBSTRING(s, start, length) は、文字列 s

SELECT SUBSTR/SUBSTRING("RUNOOB", 2, 3);
---- 从字符串 RUNOOB 中的第 2 个位置截取 3个 字符,返回UNO
ログイン後にコピー

の開始位置からの長さの部分文字列をインターセプトします。 15. POSITION(s1 IN s) は文字列 s から s1

SELECT POSITION('b' in 'abc');
---- 返回2
ログイン後にコピー

の開始位置を取得します。16. REPEAT(s,n) は文字列 s を n 回繰り返します

SELECT REPEAT('runoob',3);
---- 返回runoobrunoobrunoob
ログイン後にコピー

17.REVERSE(s )文字列 s

SELECT REVERSE('abc');
---- 返回cba
ログイン後にコピー

18 の順序を反転します。STRCMP(s1,s2) は文字列 s1 と s2 を比較します。等しい場合は 0 を返します。 s1>s2 の場合は 1 を返します。 s1
SELECT STRCMP("runoob", "runoob");
---- 返回0
ログイン後にコピー
(3) 日付関数

1、CURDATE()/CURRENT_DATE() は現在の日付を返します

SELECT CURDATE();
SELECT CURRENT_DATE();
---- 返回2019-02-19
ログイン後にコピー

2. CURRENT_TIME()/CURTIME() は現在の時刻を返します

SELECT CURRENT_TIME();
---- 返回11:40:45
ログイン後にコピー

3. CURRENT_TIMESTAMP() は現在の日付と時刻を返します

SELECT CURRENT_TIMESTAMP();
---- 返回2019-02-19 11:41:32
ログイン後にコピー

4. ADDDATE(d,n) は開始日 d に n 日後の日付を加算した日付を計算します

##

SELECT ADDDATE("2017-06-15", INTERVAL 10 DAY);
---- 返回2017-06-25
ログイン後にコピー
5. ADDTIME(t, n) 時刻 t に n 秒の時刻を加えたもの

SELECT ADDTIME('2011-11-11 11:11:11', 5);
---- 返回2011-11-11 11:11:16
ログイン後にコピー
6. DATE() は、日付または日付時刻式から日付値を抽出します。 #
SELECT DATE("2017-06-15 11:11:16");
---- 返回2017-06-15
ログイン後にコピー

7. DAY(d) は、日付値 d

の日付部分を返します。
SELECT DAY("2017-06-15"); 
---- 返回15
ログイン後にコピー

8、DATEDIFF(d1,d2)计算日期 d1->d2 之间相隔的天数

SELECT DATEDIFF('2001-01-01','2001-02-02'); 
---- 返回-32
ログイン後にコピー

9、DATE_FORMAT按表达式 f的要求显示日期 d

SELECT DATE_FORMAT('2011.11.11 11:11:11','%Y-%m-%d %r');
---- 返回2011-11-11 11:11:11 AM
ログイン後にコピー

10、DAYNAME(d)返回日期 d 是星期几,如 Monday,Tuesday

SELECT DAYNAME('2011-11-11 11:11:11');
---- 返回Friday
ログイン後にコピー

11、DAYOFMONTH(d)计算日期 d 是本月的第几天

SELECT DAYOFMONTH('2011-11-11 11:11:11');
---- 返回11
ログイン後にコピー

12、DAYOFWEEK(d)日期 d 今天是星期几,1 星期日,2 星期一,以此类推

SELECT DAYOFWEEK('2011-11-11 11:11:11');
---- 返回6
ログイン後にコピー
ログイン後にコピー

13、DAYOFYEAR(d)计算日期 d 是本年的第几天

SELECT DAYOFYEAR('2011-11-11 11:11:11');
---- 返回315
ログイン後にコピー

14、EXTRACT(type FROM d)从日期 d 中获取指定的值,type 指定返回的值
type可取值为:
MICROSECOND
SECOND
MINUTE
HOUR
DAY
WEEK
MONTH
QUARTER
YEAR
SECOND_MICROSECOND
MINUTE_MICROSECOND
MINUTE_SECOND
HOUR_MICROSECOND
HOUR_SECOND
HOUR_MINUTE
DAY_MICROSECOND
DAY_SECOND
DAY_MINUTE
DAY_HOUR
YEAR_MONTH

SELECT EXTRACT(MINUTE FROM '2011-12-13 14:15:16');
---- 返回15
ログイン後にコピー

15、DAYOFWEEK(d)日期 d 今天是星期几,1 星期日,2 星期一,以此类推

SELECT DAYOFWEEK('2011-11-11 11:11:11');
---- 返回6
ログイン後にコピー
ログイン後にコピー

16、UNIX_TIMESTAMP()得到时间戳

SELECT UNIX_TIMESTAMP('2019-2-19');
SELECT UNIX_TIMESTAMP(expression);
---- 返回1550505600
ログイン後にコピー

17、FROM_UNIXTIME()时间戳转日期

SELECT FROM_UNIXTIME(1550505600);
---- 返回2019-02-19 00:00:00
SELECT FROM_UNIXTIME(1550505600, '%Y-%m-%d');
---- 返回2019-02-19
ログイン後にコピー

(四)MySQL高级函数

1、IF(expr,v1,v2)如果表达式 expr 成立,返回结果 v1;否则,返回结果 v2

SELECT IF(1>0,'yes','no');
---- 返回yes
ログイン後にコピー

2、CONV(x,f1,f2)返回 f1 进制数变成 f2 进制数

SELECT CONV(13,10,2);
---- 返回1101
ログイン後にコピー

3、CURRENT_USER()/SESSION_USER()/SYSTEM_USER()/USER()返回当前用户
4、DATABASE()返回当前数据库名
5、VERSION()返回数据库的版本号

有不正确的地方,欢迎前来指正!

相关免费学习推荐:mysql数据库(视频)

以上がMySQL でよく使われる関数のまとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Alter Tableステートメントを使用してMySQLのテーブルをどのように変更しますか? Alter Tableステートメントを使用してMySQLのテーブルをどのように変更しますか? Mar 19, 2025 pm 03:51 PM

この記事では、MySQLのAlter Tableステートメントを使用して、列の追加/ドロップ、テーブル/列の名前の変更、列データ型の変更など、テーブルを変更することについて説明します。

INNODBフルテキスト検索機能を説明します。 INNODBフルテキスト検索機能を説明します。 Apr 02, 2025 pm 06:09 PM

INNODBのフルテキスト検索機能は非常に強力であり、データベースクエリの効率と大量のテキストデータを処理する能力を大幅に改善できます。 1)INNODBは、倒立インデックスを介してフルテキスト検索を実装し、基本的および高度な検索クエリをサポートします。 2)一致を使用してキーワードを使用して、ブールモードとフレーズ検索を検索、サポートします。 3)最適化方法には、単語セグメンテーションテクノロジーの使用、インデックスの定期的な再構築、およびパフォーマンスと精度を改善するためのキャッシュサイズの調整が含まれます。

MySQL接続用のSSL/TLS暗号化を構成するにはどうすればよいですか? MySQL接続用のSSL/TLS暗号化を構成するにはどうすればよいですか? Mar 18, 2025 pm 12:01 PM

記事では、証明書の生成と検証を含むMySQL用のSSL/TLS暗号化の構成について説明します。主な問題は、セルフ署名証明書のセキュリティへの影響を使用することです。[文字カウント:159]

人気のあるMySQL GUIツール(MySQL Workbench、PhpMyAdminなど)は何ですか? 人気のあるMySQL GUIツール(MySQL Workbench、PhpMyAdminなど)は何ですか? Mar 21, 2025 pm 06:28 PM

記事では、MySQLワークベンチやPHPMyAdminなどの人気のあるMySQL GUIツールについて説明し、初心者と上級ユーザーの機能と適合性を比較します。[159文字]

MySQLの大きなデータセットをどのように処理しますか? MySQLの大きなデータセットをどのように処理しますか? Mar 21, 2025 pm 12:15 PM

記事では、MySQLで大規模なデータセットを処理するための戦略について説明します。これには、パーティション化、シャード、インデックス作成、クエリ最適化などがあります。

INNODBのクラスターインデックスと非クラスターインデックス(セカンダリインデックス)の違い。 INNODBのクラスターインデックスと非クラスターインデックス(セカンダリインデックス)の違い。 Apr 02, 2025 pm 06:25 PM

クラスター化されたインデックスと非クラスター化されたインデックスの違いは次のとおりです。1。クラスター化されたインデックスは、インデックス構造にデータを保存します。これは、プライマリキーと範囲でクエリするのに適しています。 2.非クラスター化されたインデックスストアは、インデックスキー値とデータの行へのポインターであり、非プリマリーキー列クエリに適しています。

ドロップテーブルステートメントを使用してMySQLにテーブルをドロップするにはどうすればよいですか? ドロップテーブルステートメントを使用してMySQLにテーブルをドロップするにはどうすればよいですか? Mar 19, 2025 pm 03:52 PM

この記事では、ドロップテーブルステートメントを使用してMySQLのドロップテーブルについて説明し、予防策とリスクを強調しています。これは、バックアップなしでアクションが不可逆的であることを強調し、回復方法と潜在的な生産環境の危険を詳述しています。

JSON列にインデックスを作成するにはどうすればよいですか? JSON列にインデックスを作成するにはどうすればよいですか? Mar 21, 2025 pm 12:13 PM

この記事では、クエリパフォーマンスを強化するために、PostgreSQL、MySQL、MongoDBなどのさまざまなデータベースでJSON列にインデックスの作成について説明します。特定のJSONパスのインデックス作成の構文と利点を説明し、サポートされているデータベースシステムをリストします。

See all articles