MySQL修改数据表,数据表新增列、修改列及表数据的基础操作

 修改数据表的方式:

1.修改表名称
ALTER  TABLE  表名称  RENAME TO  新表名称;

2.修改表的字符集
ALTER  TABLE  表名称  CHARACTER  SET  字符集名称;

3.数据表添加列
ALTER  TABLE  表名称  ADD  列名称  数据类型;

4.修改数据表某一列的数据类型
ALTER  TABLE  表名称  MODIFY  列名称  新的数据类型;

5.修改数据表列名和数据类型
ALTER  TABLE  表名称  CHANGE  列名称  新列名称  新数据类型;

6.删除数据表的某一列
ALTER TABLE 表名称 DROP 列名称;

表数据的基础操作:

添加数据:(INSERT和replace可以互换)

INSERT和replace的区别:

insert: 直接添加一条新的数据(主键相同时会报错)

replace: 可重复刷数据,主键相同时,替换原有的数据

1.添加数据到指定的列
INSERT  INTO  表名称  (列名1, 列名2, 列名3)  VALUES  (值1,值2,值3);

2.添加数据到全部的列
INSERT  INTO  表名称  VALUES  (值1,值2,值3,值4);

3.批量添加数据,一次添加多行数据
INSERT  INTO  表名称  (列名1, 列名2, 列名3)  VALUES  (值1,值2,值3),(值1,值2,值3),(值1,值2,值3);
INSERT  INTO  表名称  VALUES  (值1,值2,值3,值4,值5), (值1,值2,值3,值4,值5), (值1,值2,值3,值4,值5);
修改数据:
根据WHERE条件修改表记录。没有WHERE条件时,全部的记录都会被修改。
UPDATE  表名称  SET  列名1 = 值1, 列名2 = 值2, 列名3 = 值3  [WHERE 条件];
删除数据:(删除表数据关键字:最常用delete(不释放空间),truncate(可释放空间))
根据WHERE条件删除表记录。没有WHERE条件时,全部的记录都会被删除。
DELETE  FROM  表名称  [WHERE 条件];

查询数据:

SELECT 字段列表 FROM 表名列表 WHERE 条件列表 GROUP BY 分组字段 HAVING 分组后的过滤条件 ORDER BY 排序 LIMIT 分页; 

1.查询全部的数据
SELECT  *  FROM  表名称;

2.查询指定的列数据
SELECT  列名1, 列名2, 列名3  FROM  表名称;

3.去重复列的查询
SELECT  DISTINCT  列名1, 列名2, 列名3  FROM 表名称;

4.四则运算的查询(列进行加减乘除等操作)
SELECT 列名1  运算符(+ - * /) 列名2 FROM 表名称;

5.IFNULL函数的使用,如果为NULL的情况下指定数据
SELECT  列名1  运算符(+ - * /)  IFNULL(列名2,0) FROM  表名称;

 6. 起名字(别名)的查询操作, 操作过程当中 AS 可以省略不写
SELECT 列名  AS 别名  FROM 表名称;

7.聚合函数查询(聚合函数有很多种,感兴趣的自己要多了解)

SELECT 聚合函数(列名称)  FROM 表名称;

 8.排序查询

SELECT 列名列表  FROM 表名称 [WHERE 条件]   ORDER  BY   列名1   排序方式1, 列名2 排序方式2;

9.分组查询

SELECT 列名列表  FROM 表名称 [WHERE 条件]  GROUP  BY 分组列名   HAVING 分组之后的条件过滤   [ORDER  BY 排序列名 排序方式];

了解:分组查询之后的结果, 只能是两种数据:

1. 分组字段(也就是分组的列名)

2.聚合函数

  • 15
    点赞
  • 92
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据引用\[1\]和\[2\]的信息,可以使用导出和导入数据的方法来批量修改MySQL表的数据。通过使用OUTFILE命令将数据导出到一个文件中,然后对文件进行修改,最后使用LOAD DATA INFILE命令将修改后的数据导入到表中。这种方法可以大大减少数据库的查询操作次数,节约系统资源。同时,根据引用\[2\]的说明,这种方法的性能比一次性插入一条数据快20倍。 另外,根据引用\[3\]的信息,需要注意SQL语句的长度限制。如果SQL语句超过了程序运行环境所支持的字符串长度,可以通过更新MySQL的设置来扩展。可以通过执行"show variables like 'max_allowed_packet'"命令来查看当前的max_allowed_packet设置,然后根据需要修改my.cnf文件中的max_allowed_packet参数,或者使用"set global max_allowed_packet=10000000"命令来修改全局级的设置,或者使用"set session max_allowed_packet=10000000"命令来修改会话级的设置。 综上所述,可以使用导出和导入数据的方法来批量修改MySQL表的数据,并根据需要修改max_allowed_packet参数来避免SQL语句长度限制的问题。 #### 引用[.reference_title] - *1* *2* *3* [MySql中几种批量更新/新增/删除的方法](https://blog.csdn.net/hudeyong926/article/details/104831441)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值