Mysql 関数は、特定の機能操作を実装し、さまざまな特定の操作を完了するために使用されます。関数を使用すると、標準コンポーネント プログラミングが可能になり、SQL ステートメントの再利用性、共有性、移植性が向上し、プログラム セグメントを繰り返し記述する作業負荷を軽減できます。 、プログラムの可読性が向上し、プログラムのコンパイルと操作の効率が向上し、より高品質のターゲットコードが生成されます。
このチュートリアルの動作環境: Windows10 システム、mysql8.0.22 バージョン、Dell G3 コンピューター。
関数の役割:
関数は、特定の機能操作を実装し、重要なさまざまな特定の操作を完了するために使用されます。手段。
利点:
標準コンポーネント プログラミングが可能になり、SQL ステートメントの再利用性、共有性、移植性が向上します。
を使用すると、プログラム セグメントを繰り返し記述する作業負荷が軽減され、プログラムの可読性が向上します。
プログラムのコンパイルと実行の効率を向上させ、より高品質なターゲット コードを生成し、アルゴリズム設計の「ニーズ」の「正確さ、可読性、堅牢性、効率性、低ストレージ容量」を満たします。基本的な要件。
知識の拡大
MySQL データベースは、一般的に使用される集計関数、日付および文字列処理関数など、幅広い関数を提供します。これらの関数は SELECT ステートメントとその条件式で使用でき、ユーザーがテーブル内のデータをより便利に処理できるようになり、MySQL データベースがより強力になります。この記事では主にいくつかの一般的な関数の使い方を紹介します。1. 集計関数
集計関数は日常生活でよく使用される関数の一種で、次のようなものがあります: COUNT( col) 統計クエリ結果 行数MIN(col) 指定列の最小値を問い合わせMAX(col) 指定列の最大値を問い合わせ SUM(col) 指定した列の合計を合計して返しますAVG(col) 平均を求め、指定した列データの平均を返しますデータ2. 数値関数
数値関数 主に数値データを処理して目的の結果を得る関数で、よく使われるものを以下に挙げますので、具体的な使い方を試してみてください。 ABS(x) xBIN(x) の絶対値を返します。 xCEILING(x) のバイナリ値を返します。 xより大きい最小の整数値を返します。
EXP(x) 値 e (自然対数の底) の xFLOOR(x) を返します。 xGREATEST(x1 未満の最大の整数値を返します) ,x2,. ..,xn) セット内の最大値を返しますLEAST(x1,x2,...,xn) セット内の最小値を返しますLN(x ) x の自然ペアを返します。 NumberLOG(x,y) xMOD(x,y) の y の底の対数を返します。 x/y## の係数 (剰余) を返します。# PI() pi の値 (pi 比) を返します。
RAND() 0 から 1 までのランダムな値を返します。以下を提供することで、RAND() 乱数ジェネレーターに指定された値を生成させることができます。パラメータ (シード)
ROUND(x,y) パラメータ x の値を小数点以下 y 桁で四捨五入して返します
TRUNCATE(x,y) 数値 x を小数点 y に切り捨てた結果を返しますplace
いくつかの例:
# ABS()函数求绝对值 mysql> SELECT ABS(5),ABS(-2.4),ABS(-24),ABS(0); +--------+-----------+----------+--------+ | ABS(5) | ABS(-2.4) | ABS(-24) | ABS(0) | +--------+-----------+----------+--------+ | 5 | 2.4 | 24 | 0 | +--------+-----------+----------+--------+ # 取整函数 CEIL(x) 和 CEILING(x) 的意义相同,返回不小于 x 的最小整数值 mysql> SELECT CEIL(-2.5),CEILING(2.5); +------------+--------------+ | CEIL(-2.5) | CEILING(2.5) | +------------+--------------+ | -2 | 3 | +------------+--------------+ # 求余函数 MOD(x,y) 返回 x 被 y 除后的余数 mysql> SELECT MOD(63,8),MOD(120,10),MOD(15.5,3); +-----------+-------------+-------------+ | MOD(63,8) | MOD(120,10) | MOD(15.5,3) | +-----------+-------------+-------------+ | 7 | 0 | 0.5 | +-----------+-------------+-------------+ # RAND() 函数被调用时,可以产生一个在 0 和 1 之间的随机数 mysql> SELECT RAND(), RAND(), RAND(); +---------------------+--------------------+----------------------+ | RAND() | RAND() | RAND() | +---------------------+--------------------+----------------------+ | 0.24996517063115273 | 0.9559759106077029 | 0.029984071878701515 | +---------------------+--------------------+----------------------+3. 文字列関数
文字列関数は文字列型のデータを処理でき、プログラム アプリケーションで非常に役立ちます。よく使用されるものをいくつか示します。
LENGTH(s) 文字列長関数を計算し、文字列のバイト長を返します。
CONCAT(s1,s2...,sn) 文字列をマージします。関数の場合、戻り結果は接続パラメータによって生成された文字列です。パラメータには 1 つ以上の
INSERT(str,x,y,instr) を指定できます。文字列 str は x 番目の位置 y から始まります文字長の部分文字列を文字列 instr に置き換え、結果を返します。
LOWER(str) 文字列内の文字を小文字に変換します。
UPPER(str) 文字列内の文字を大文字に変換します。 case
LEFT(str,x) 文字列の左端の x 文字を返します。 str
RIGHT(str,x) 文字列の右端の x 文字を返します。 str
TRIM (str) 文字列の左側と右側のスペースを削除します
REPLACE 文字列置換関数、置換後の新しい文字列を返します
SUBSTRING 文字列をインターセプトし、指定された位置から開始して返します指定された長さの文字を置換します。
REVERSE(str) 文字列 str を反転した結果を返します。
いくつかの例:
# LENGTH(str) 函数的返回值为字符串的字节长度 mysql> SELECT LENGTH('name'),LENGTH('数据库'); +----------------+---------------------+ | LENGTH('name') | LENGTH('数据库') | +----------------+---------------------+ | 4 | 9 | +----------------+---------------------+ # CONCAT(sl,s2,...) 函数返回结果为连接参数产生的字符串 若有任何一个参数为 NULL,则返回值为 NULL mysql> SELECT CONCAT('MySQL','5.7'),CONCAT('MySQL',NULL); +-----------------------+----------------------+ | CONCAT('MySQL','5.7') | CONCAT('MySQL',NULL) | +-----------------------+----------------------+ | MySQL5.7 | NULL | +-----------------------+----------------------+ # INSERT(s1,x,len,s2) 返回字符串 s1,子字符串起始于 x 位置,并且用 len 个字符长的字符串代替 s2 mysql> SELECT INSERT('Football',2,4,'Play') AS col1, -> INSERT('Football',-1,4,'Play') AS col2, -> INSERT('Football',3,20,'Play') AS col3; +----------+----------+--------+ | col1 | col2 | col3 | +----------+----------+--------+ | FPlayall | Football | FoPlay | +----------+----------+--------+ # UPPER,LOWER是大小写转换函数 mysql> SELECT LOWER('BLUE'),LOWER('Blue'),UPPER('green'),UPPER('Green'); +---------------+---------------+----------------+----------------+ | LOWER('BLUE') | LOWER('Blue') | UPPER('green') | UPPER('Green') | +---------------+---------------+----------------+----------------+ | blue | blue | GREEN | GREEN | +---------------+---------------+----------------+----------------+ # LEFT,RIGHT是截取左边或右边字符串函数 mysql> SELECT LEFT('MySQL',2),RIGHT('MySQL',3); +-----------------+------------------+ | LEFT('MySQL',2) | RIGHT('MySQL',3) | +-----------------+------------------+ | My | SQL | +-----------------+------------------+ # REPLACE(s,s1,s2) 使用字符串 s2 替换字符串 s 中所有的字符串 s1 mysql> SELECT REPLACE('aaa.mysql.com','a','w'); +----------------------------------+ | REPLACE('aaa.mysql.com','a','w') | +----------------------------------+ | www.mysql.com | +----------------------------------+ # 函数 SUBSTRING(s,n,len) 带有 len 参数的格式,从字符串 s 返回一个长度同 len 字符相同的子字符串,起始于位置 n mysql> SELECT SUBSTRING('computer',3) AS col1, -> SUBSTRING('computer',3,4) AS col2, -> SUBSTRING('computer',-3) AS col3, -> SUBSTRING('computer',-5,3) AS col4; +--------+------+------+------+ | col1 | col2 | col3 | col4 | +--------+------+------+------+ | mputer | mput | ter | put | +--------+------+------+------+
推奨される学習:
mysql ビデオ チュートリアル以上がmysql関数の機能とは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。