MySQL学习笔记【常用操作实例及代码】.docVIP

MySQL学习笔记【常用操作实例及代码】.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

PAGE

PAGE1

MySQL学习笔记【常用操作实例及代码】

目录

SQL学习

1.sql语句新增字段:

2.删除字段sql语句:

3.修改字段sql语句

4.使用DISTINCT规避重复的数据

5.或者使用groupby进行去重

6.获取一个表内2个字段相同的数据

7.开放数据库访问权限

8.当MySQL的自增id用完了怎么办?

9.字母加数字拼接的内容查询

Mysql数据库中查询某表中第二大的数据

MySQL查找重复的电子邮箱

SQL学习

1.sql语句新增字段:

ALTERtableTABLE_NAME(表名)ADDCULUMN`field(字段)`数据类型是否无符号是否为空是否设置默认值;

2.删除字段sql语句:

ALTERTABLETABLE_NAMEDROPCOLUMNCOLUMN_NAME

3.修改字段sql语句

altertableTABLE_NAMEmodifycolumnCOLUMN_NAMEvarchar(20)COMMENT#39;注释#39;;

4.使用DISTINCT规避重复的数据

SELECT

DISTINCT

c.`name`,

cc.`name`ASclass_name,

c.`id`,

c.`cid`

FROM

sycms_questionASq

RIGHTJOINcourseAScONq.cid=c.id

LEFTJOINcourse_classASccONc.cid=cc.id

WHERE

`cc`.`id`=63

ORDERBY

c.idDESC

GROUPBY

c.`name`

LIMIT0,5

5.或者使用groupby进行去重

6.获取一个表内2个字段相同的数据

SELECT

`id`,

`status`,

`quantity`,

`take_count`

FROM

couponASa

WHERE

EXISTS(SELECTquantity,take_countFROMcouponWHEREquantity=a.take_countGROUPBYquantityHAVINGcount(*)1)

7.开放数据库访问权限

开放远程连接权限:grant[权限]on[database.table]to[用户名]@[IP]identifiedby[密码];

刷新权限:flushprivileges;

例子:

grantallprivilegesontest.*touser@#39;%#39;identifiedby#39;1234#39;;

意思是,test数据库的所有表对任意IP地址的user用户开放所有权限,登陆密码是1234。

8.当MySQL的自增id用完了怎么办?

在MySQL中,Int整型的范围如下:

类型

最小值

最大值

存储大小

Int有符号

-2147483648

2148483648

4bytes

Int无符号

0

4294967295

4bytes

以无符号整型为例,约43亿,一旦达到最大值,此时数据继续插入会报一个逐渐冲突异常如下所示

Duplicateentry#39;4294967295#39;forkey#39;PRIMARY#39;

解决方案就是把Int类型改为BigInt类型,它的范围如下

类型

最小值

最大值

存储大小

BigInt有符号

-9223372036854775808

923372036854775808

8bytes

BigInt无符号

0

18446744073709551615

8bytes

更好的回答是

进行分库分表

线上如何修改列的数据类型

ALTERTABLEtable_nameCHANGEold_field_namenew_field_namefield_type;

不保险还是用第三方工具进行修改表结构

9.字母加数字拼接的内容查询

比如查询CS001~CS020之间的所有卡号

select*fromcoupon

wherenumberlike#39;CS%#39;

andCONVERT(REPLACE(number,CS,),SIGNED)=1

andCONVERT(REPLACE(number,CS,),SIGNED)lt;=20

select*fromtablewhereCONVERT(replace(起始卡号,固定前缀,),SIGNED)lt;查询的号码

Mysql数据库中查询某表中第二大的数据

leetc

文档评论(0)

177****3143 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档