51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

【合集】MySQL

docker部署mysql

MySql字段类型 默认长度 {#mysql字段类型-默认长度}

|----------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | mysql # 整型: TINYINT 1 字节 SMALLINT 2 个字节 MEDIUMINT 3 个字节 INT 4 个字节 INTEGER 4 个字节 BIGINT 8 个字节 # 浮点型: FLOAT(X) 4 如果 X < = 24 或 8 如果 25 < = X < = 53 FLOAT 4 个字节 DOUBLE 8 个字节 DOUBLE PRECISION 8 个字节 REAL 8 个字节 DECIMAL(M,D) M字节(D+2 , 如果M < D) NUMERIC(M,D) M字节(D+2 , 如果M < D) # 日期和时间型: DATE 3 个字节 DATETIME 8 个字节 (我试的mysql8,最大6) TIMESTAMP 4 个字节 TIME 3 个字节 YEAR 1 字节 # 串类型: CHAR(M) M字节,1 <= M <= 255 VARCHAR(M) L+1 字节, 在此L <= M和1 <= M <= 255 TINYBLOB, TINYTEXT L+1 字节, 在此L< 2 ^ 8 BLOB, TEXT L+2 字节, 在此L< 2 ^ 16 MEDIUMBLOB, MEDIUMTEXT L+3 字节, 在此L< 2 ^ 24 LONGBLOB, LONGTEXT L+4 字节, 在此L< 2 ^ 32 ENUM('value1','value2',...) 1 或 2 个字节, 取决于枚举值的数目(最大值65535) SET('value1','value2',...) 1,2,3,4或8个字节, 取决于集合成员的数量(最多64个成员) |

常用SQL {#常用sql}

|-------|--------------------------------------------------------------------------------------------------------| | 1 2 3 | shell # 修改表字段 ALTER TABLE contract MODIFY COLUMN content_file_key text null comment '合同文本文件ID'; |

mysql根据条件字段true或者false,来修改表字段的值为0或者1,sql怎么写? {#mysql根据条件字段true或者false来修改表字段的值为0或者1sql怎么写}

使用CASE语句 {#使用case语句}

更新

|-----|---------------------------------------------------------------------------------------| | 1 2 | shell UPDATE my_table SET active_flag = CASE WHEN is_active THEN 1 ELSE 0 END; |

插入

|-------|------------------------------------------------------------------------------------------------------------------| | 1 2 3 | shell INSERT INTO another_table (active_flag) SELECT CASE WHEN is_active THEN 1 ELSE 0 END FROM my_table; |

使用IF函数 {#使用if函数}

更新

|-----|---------------------------------------------------------------------| | 1 2 | shell UPDATE my_table SET active_flag = IF(is_active, 1, 0); |

插入

|-------|------------------------------------------------------------------------------------------------| | 1 2 3 | shell INSERT INTO another_table (active_flag) SELECT IF(is_active, 1, 0) FROM my_table; |

Mysql替换表中字段值 {#mysql替换表中字段值}

如果col_name的值为a,则替换成b

|-------|-------------------------------------------------------------------------------------------------------------------| | 1 2 3 | mysql UPDATE table_name SET col_name = CASE WHEN col_name = 'a' THEN 'b' ELSE col_name END WHERE id = '1'; |

赞(0)
未经允许不得转载:工具盒子 » 【合集】MySQL