五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【入門篇】2.5 MySQL常用數(shù)據(jù)類型、函數(shù)介紹

2023-07-15 00:11 作者:數(shù)據(jù)庫進階  | 我要投稿

MySQL常用數(shù)據(jù)類型、函數(shù)介紹

目錄

1 常用的數(shù)據(jù)類型

1.1 整數(shù)類型(Integer Types)

1.2 浮點數(shù)類型(Floating-Point Types)

1.3 字符串類型(String Types)

1.4 日期和時間類型(Date and Time Types)

1.5 二進制類型(Binary Types)

1.6 示例

2 常用的函數(shù)

2.1 字符串函數(shù)

2.2 數(shù)值函數(shù)

2.3 日期和時間函數(shù)

2.4 聚合函數(shù)

2.5 示例

?

1 常用的數(shù)據(jù)類型

1.1 整數(shù)類型(Integer Types)

  • TINYINT:范圍為-128到127的有符號整數(shù)或0到255的無符號整數(shù)。若要表達無符號整數(shù),在類型后添加UNSIGNED關(guān)鍵字即可。 1字節(jié)。
  • SMALLINT:范圍為-32768到32767的有符號整數(shù)或0到65535的無符號整數(shù)。2字節(jié)。
  • MEDIUMINT:范圍為-8388608到8388607的有符號整數(shù)或0到16777215的無符號整數(shù)。3字節(jié)。
  • INT或INTEGER:范圍為-2147483648到2147483647的有符號整數(shù)或0到4294967295的無符號整數(shù)。 4字節(jié)。
  • BIGINT:范圍為-9223372036854775808到9223372036854775807的有符號整數(shù)或0到18446744073709551615的無符號整數(shù)。8字節(jié)。

1.2 浮點數(shù)類型(Floating-Point Types)

  • FLOAT:單精度浮點數(shù),精度為7位。4字節(jié)。
  • DOUBLE:雙精度浮點數(shù),精度為15位。8字節(jié)。
  • DECIMAL:高精度小數(shù),用于存儲精確的十進制數(shù)值。DECIMAL的定義格式為:DECIMAL(precision, scale),其中precision表示總位數(shù),scale表示小數(shù)位數(shù)。
  • precision:表示數(shù)值的總位數(shù),包括整數(shù)位和小數(shù)位。它的取值范圍是1到65,默認為10。
  • scale:表示小數(shù)位數(shù)。它的取值范圍是0到precision之間,默認為0,表示整數(shù)。

DECIMAL數(shù)據(jù)類型的定義示例:

定義一個DECIMAL列,精度為10位,沒有小數(shù)位:


column_name DECIMAL(10, 0);

這將允許存儲范圍在-9999999999到9999999999之間的整數(shù)。

定義一個DECIMAL列,總長度為8位,包括2位小數(shù):


column_name DECIMAL(8, 2);

這將允許存儲范圍在-999999.99到999999.99之間的數(shù)值,小數(shù)部分占據(jù)2位。

1.3 字符串類型(String Types)

  • CHAR:固定長度字符串,最大長度為255個字符。
  • VARCHAR:可變長度字符串,最大長度為65535個字符。
  • TEXT:可變長度的文本字符串,最大長度為65535個字符。存不下時使用LONGTEXT。
  • ENUM:枚舉類型,用于定義一組允許的值。1或2字節(jié),取決于枚舉值的數(shù)量。
  • SET:集合類型,用于定義一組允許的值。1、2、3、4或8字節(jié),取決于集合值的數(shù)量。

1.4 日期和時間類型(Date and Time Types)

  • DATE:日期,格式為'YYYY-MM-DD'。3字節(jié)。
  • TIME:時間,格式為'HH:MM:SS'。3字節(jié)。
  • DATETIME:日期和時間,格式為'YYYY-MM-DD HH:MM:SS'。
  • TIMESTAMP:UNIX時間戳,范圍從'1970-01-01 00:00:01'到'2038-01-19 03:14:07'。
  • YEAR:年份,范圍從1901到2155。1字節(jié)。

1.5 二進制類型(Binary Types)

  • BINARY:固定長度的二進制字符串。最多255字節(jié)。
  • BLOB:二進制大對象,用于存儲大量的二進制數(shù)據(jù)。最多65535字節(jié)。
  • LONGBLOB:長二進制大對象,最大長度為4294967295個字節(jié)。最多4294967295字節(jié)。

1.6 示例

創(chuàng)建一個包含不同數(shù)據(jù)類型的表:


CREATE TABLE my_table (
  id INT,
  name VARCHAR(50),
  age TINYINT UNSIGNED,
  salary DECIMAL(10, 2),
  birth_date DATE
);

插入數(shù)據(jù)到表中:


INSERT INTO my_table (id, name, age, salary, birth_date)
VALUES (1, 'John Doe', 30, 5000.00, '1990-01-01');

?

2 常用的函數(shù)

2.1 字符串函數(shù)

  • CONCAT:將多個字符串連接成一個字符串。
  • LENGTH:返回字符串的長度。
  • SUBSTRING:提取字符串的子串。
  • UPPER:將字符串轉(zhuǎn)換為大寫。
  • LOWER:將字符串轉(zhuǎn)換為小寫。
  • REPLACE:替換字符串中的部分字符。

2.2 數(shù)值函數(shù)

  • ABS:返回一個數(shù)的絕對值。
  • ROUND:四舍五入到指定的小數(shù)位數(shù)。
  • CEIL:向上取整。
  • FLOOR:向下取整。
  • MOD:返回兩個數(shù)相除的余數(shù)。

2.3 日期和時間函數(shù)

  • NOW:返回當(dāng)前日期和時間。
  • DATE:提取日期部分。
  • TIME:提取時間部分。
  • YEAR:提取年份。
  • MONTH:提取月份。
  • DAY:提取日期。
  • HOUR:提取小時。
  • MINUTE:提取分鐘。
  • SECOND:提取秒數(shù)。
  • DATA_SUB: 指定日期減去指定的時間間隔。

2.4 聚合函數(shù)

  • COUNT:返回匹配指定條件的行數(shù)。
  • SUM:計算指定列的總和。
  • AVG:計算指定列的平均值。
  • MAX:返回指定列的最大值。
  • MIN:返回指定列的最小值。

2.5 示例

使用字符串函數(shù):


SELECT CONCAT('Hello', ' ', 'World') AS result;
-- 輸出:Hello World

SELECT LENGTH('MySQL') AS result;
-- 輸出:5

SELECT SUBSTRING('Hello World', 7) AS result;
-- 輸出:World

SELECT SUBSTRING('Hello World', 7, 3) AS result;
-- 輸出:Wor

SELECT SUBSTRING('Hello World', -2) AS result;
-- 輸出:ld


SELECT UPPER('hello') AS result;
-- 輸出:HELLO

SELECT LOWER('WORLD') AS result;
-- 輸出:world

SELECT REPLACE('Hello World', 'World', 'ChatGPT') AS result;
-- 輸出:Hello ChatGPT

使用數(shù)值函數(shù):


SELECT ABS(-10) AS result;
-- 輸出:10

SELECT ROUND(3.14159, 2) AS result;
-- 輸出:3.14

SELECT CEIL(3.5) AS result;
-- 輸出:4

SELECT FLOOR(3.9) AS result;
-- 輸出:3

SELECT MOD(10, 3) AS result;
-- 輸出:1

使用日期和時間函數(shù):


SELECT NOW() AS current_datetime;
-- 輸出:當(dāng)前日期和時間

SELECT DATE('2023-07-09 15:30:00') AS result;
-- 輸出:2023-07-09

SELECT TIME('2023-07-09 15:30:00') AS result;
-- 輸出:15:30:00

SELECT YEAR('2023-07-09') AS result;
-- 輸出:2023

SELECT MONTH('2023-07-09') AS result;
-- 輸出:7

SELECT DAY('2023-07-09') AS result;
-- 輸出:9

SELECT HOUR('2023-07-09 15:30:00') AS result;
-- 輸出:15

SELECT MINUTE('2023-07-09 15:30:00') AS result;
-- 輸出:30

SELECT SECOND('2023-07-09 15:30:00') AS result;
-- 輸出:0

SELECT DATE_SUB('2023-07-14', INTERVAL 1 DAY);
-- 輸出:2023-07-13

SELECT DATE_SUB(NOW(), INTERVAL 3 MONTH);
-- 輸出:根據(jù)當(dāng)前日期計算出的三個月前的日期

SELECT DATE_SUB('2023-07-09 10:00:00', INTERVAL 2 HOUR);
-- 輸出:2023-07-09 08:00:00

SELECT DATE_SUB(NOW(), INTERVAL 30 MINUTE);
-- 輸出:根據(jù)當(dāng)前日期時間計算出的30分鐘前的日期時間


使用聚合函數(shù):

假設(shè)有一個名為employees的表,包含salary列,可以執(zhí)行以下查詢:


SELECT COUNT(*) AS total_employees FROM employees;
-- 輸出:返回員工總數(shù)

SELECT SUM(salary) AS total_salary FROM employees;
-- 輸出:返回員工工資總和

SELECT AVG(salary) AS average_salary FROM employees;
-- 輸出:返回員工工資平均值

SELECT MAX(salary) AS max_salary FROM employees;
-- 輸出:返回最高工資

SELECT MIN(salary) AS min_salary FROM employees;
-- 輸出:返回最低工資 2.5 MySQL常用數(shù)據(jù)類型、函數(shù)介紹

?

【入門篇】2.5 MySQL常用數(shù)據(jù)類型、函數(shù)介紹的評論 (共 條)

分享到微博請遵守國家法律
永平县| 闻喜县| 和平区| 阳江市| 武汉市| 凤冈县| 油尖旺区| 八宿县| 吴川市| 邹城市| 抚松县| 通榆县| 邮箱| 石家庄市| 天津市| 南澳县| 丰镇市| 宁南县| 平舆县| 陆良县| 和林格尔县| 枣强县| 南丹县| 肥西县| 三门县| 天台县| 德安县| 江阴市| 且末县| 墨竹工卡县| 若尔盖县| 洮南市| 白城市| 手游| 阿克陶县| 南充市| 益阳市| 区。| 读书| 右玉县| 高台县|