ホームページ  >  記事  >  データベース  >  MySQL 演習 3: MySQL 関数の使用

MySQL 演習 3: MySQL 関数の使用

coldplay.xixi
coldplay.xixi転載
2021-03-10 09:28:192710ブラウズ

MySQL 演習 3: MySQL 関数の使用

事例: さまざまな関数を使ってデータを操作し、さまざまな関数の機能と使い方をマスターします。
(1) 数学関数 rand() を使用して、10 以内の 3 つのランダムな整数を生成します。
(2) sin()、con()、tan()、cot()関数を使用して三角関数の値を計算し、計算結果を整数値に変換します。
(3) テーブルを作成し、文字列関数と日付関数を使用してフィールド値を操作します。
(4) 条件判定のユースケース m_birth が 2000 未満の場合は「高齢」、m_birth が 2000 を超える場合は「若い」と表示されます。


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

(1 )、数学関数 rand() を使用して、10 以内の 3 つのランダムな整数を生成します。
mysql> select round( rand() * 10 ),round( rand() * 10 ), round( rand() * 10 );+----------------------+----------------------+----------------------+| round( rand() * 10 ) | round( rand() * 10 ) | round( rand() * 10 ) |+----------------------+----------------------+----------------------+|                    9 |                    8 |                    1 |+----------------------+----------------------+----------------------+1 row in set (0.00 sec)
(2). sin()、con()、tan()、cot()関数を使用して三角関数の値を計算し、計算結果を整数値に変換します。
mysql> select pi(),
    -> sin(pi()/2),
    -> cos(pi()),
    -> round(tan(pi()/4)),
    -> floor(cot(pi()/4));+----------+-------------+-----------+--------------------+--------------------+| pi()     | sin(pi()/2) | cos(pi()) | round(tan(pi()/4)) | floor(cot(pi()/4)) |+----------+-------------+-----------+--------------------+--------------------+| 3.141593 |           1 |        -1 |                  1 |                  1 |+----------+-------------+-----------+--------------------+--------------------+1 row in set (0.00 sec)
(3)、テーブルを作成し、文字列関数と日付関数を使用してフィールド値を操作します。

① auto_increment 制約の m_id フィールド、varchar 型の m_FN フィールド、varchar 型の m_LN フィールド、datetime 型の m_birth フィールド、varchar 型の m_info フィールドの 5 つのフィールドを含むテーブル メンバーを作成します。 。

mysql> create table member    -> (
    -> m_id int auto_increment primary key,
    -> m_FN varchar(100),
    -> m_LN varchar(100),
    -> m_birth datetime,
    -> m_info varchar(255) null
    -> );Query OK, 0 rows affected (0.21 sec)

②レコードを挿入します。m_id 値はデフォルト、m_FN 値は「Halen」、m_LN 値は「Park」、m_birth 値は 1970-06-29、m-info 値は"いい男"。

mysql> insert into member values
    -> ( null,'Halen','Park','1970-06-29','GoodMan');Query OK, 1 row affected (0.01 sec)mysql> select * from member;+------+-------+------+---------------------+---------+| m_id | m_FN  | m_LN | m_birth             | m_info  |+------+-------+------+---------------------+---------+|    1 | Halen | Park | 1970-06-29 00:00:00 | GoodMan |+------+-------+------+---------------------+---------+1 row in set (0.00 sec)

③m_FN の長さを返し、最初のレコード内の人のフルネームを返し、m_info フィールドの値を小文字に変換します。 m_infoの値を反転して出力します。

mysql> select length(m_FN),concat(m_FN,m_LN),
    -> lower(m_info),reverse(m_info) from member;+--------------+-------------------+---------------+-----------------+| length(m_FN) | concat(m_FN,m_LN) | lower(m_info) | reverse(m_info) |+--------------+-------------------+---------------+-----------------+|            5 | HalenPark         | goodman       | naMdooG         |+--------------+-------------------+---------------+-----------------+1 row in set (0.00 sec)

④ 最初のレコード内の人の年齢を計算し、その年の m_birth フィールドの値の位置を計算し、時刻の値を「1997 年 10 月 4 日土曜日」の形式で出力します。

mysql> select year(curdate())-year(m_birth) as age,dayofyear(m_birth) as days,
    -> date_format(m_birth,'%W %D %M %Y') as birthDate from member;+------+------+-----------------------+| age  | days | birthDate             |+------+------+-----------------------+|   49 |  180 | Monday 29th June 1970 |+------+------+-----------------------+1 row in set (0.00 sec)

⑤新しいレコードを挿入します。m_FN 値は「Samuel」、m_LN 値は「Greem」、m_birth 値は現在のシステム時刻、m_info は空です。最後に挿入された ID 値を表示するには、last_insert_id を使用します。

mysql> insert into member values( null,'Samuel','Green',now(),null);Query OK, 1 row affected (0.04 sec)mysql> select * from member;+------+--------+-------+---------------------+---------+| m_id | m_FN   | m_LN  | m_birth             | m_info  |+------+--------+-------+---------------------+---------+|    1 | Halen  | Park  | 1970-06-29 00:00:00 | GoodMan ||    2 | Samuel | Green | 2019-08-20 12:43:23 | NULL    |+------+--------+-------+---------------------+---------+3 rows in set (0.00 sec)

テーブル内に 2 つのレコードがあることがわかります。次に、last_insert_id() 関数を使用して、最後に挿入された ID 値を表示します。SQL ステートメントは次のとおりです:

mysql> select last_insert_id();+------------------+| last_insert_id() |+------------------+|                3 |+------------------+1 row in set (0.00 sec)
( 4)、条件の使用例 m_birth が 2000 未満の場合は「老人」と表示され、m_birth が 2000 より大きい場合は「若い」と表示されます。
mysql> select m_birth,case when year(m_birth)<2000 then &#39;old&#39;
    -> when year(m_birth)>2000 then 'young'
    -> else 'not born' end as status from member;+---------------------+--------+| m_birth             | status |+---------------------+--------+| 1970-06-29 00:00:00 | old    || 2019-08-20 12:43:23 | young  |+---------------------+--------+3 rows in set (0.00 sec)

関連する無料学習の推奨事項: mysql データベース(ビデオ)

以上がMySQL 演習 3: MySQL 関数の使用の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。