MySQL特定的SQL语句简介

分类:编程技术 时间:2024-02-20 15:35 浏览:0 评论:0
0
本文介绍《MySQL特有的SQL语句简介》的相关知识。在实际案例操作过程中,很多人都会遇到这样的困境。接下来就让小编带领大家学习一下如何处理这些情况。 !我希望你能仔细阅读并学到一些东西!

create语句

如果要复制表结构信息,下面的语句真是简洁有力,会复制表test1的结构。

create table test like test1;

select into语句

select into语句可以快速从表中检索数据。快速建表。

SELECT vale1, value2 from Table1 into Table2
这会要求目标表Table2不存在,因为插入时会自动创建表Table2

insert语句表达式

MySQL中的insert语句还是很丰富的。佛例如,下面的动态值和设置表达式的方式,MySQL有自己的口味。

INSERT INTO tbl_name (col1,col2) VALUES(15,col1*2);

--ok
INSERT INTO tbl_name (col1,col2) VALUES(col2* 2,15);

--错误

insert语句

MySQL支持的特有的insert语句,下面第一个第一个是该语句mysqldump 导出的格式。这种方法比多条SQL语句更清晰,效果也更好。

INSERT INTO table (a, b, c) VALUES (1,2,3) ,(2,3,4);

下面的语句看起来比较特殊,分析MySQL binlog会发现里面的insert语句是这样的。

INSERT INTO table SET a=1, b=2, c=3;

删除

删除语句

MySQL 中的 drop 语句非常独特。它不像Oracle那样独立删除索引。删除必须始终与表相关联。这么一想,还蛮符合性格的物联网的特点。

如果直接删除索引,会抛出如下错误。

?删除索引 ind_account_id2;

?ERROR 1064 (42000):

您可以使用以下方法:

删除索引 ind_account_id2 on t_user_login_record;

查询正常,0行受影响(0.01秒)

记录:0重复:0警告:0

或者使用更经典的方式写法:

alter table t_user_login_record drop index account;

级联删除

MySQL支持级联删除,下面的语句会删除数据联合,Oracle 目前不支持。

从 A,B 中删除 A,B,其中 A.id = B.aid

更改

< strong>级联更新

更新A,B设置A.a = a1,B.b = b1,其中A.id = B.aid

更改修改

strong>

change和modify的用法有些相似,但仔细观察,还是有合适的使用场景例如change is更适合修改字段b的类型或属性。字段名、修改数据类型修改更直接。

ALTER TABLE t1 CHANGE b b BIGINT NOT NULL;
ALTER TABLE t1 MODIFY b BIGINT NOT NULL;

replace语句

MySQL中的replace语句还是很有特色的,和Oracle中的merge类似。支持两种模式,数据值和子查询方法

replace into x values(...)

或者

replace into x select * from y

renmae语句

这个函数可能被大家忽略了,但其实这个函数很实用,比如要清理一个表,这个方法如果将其归档到历史数据库并且暂时不清理数据,则速度非常快。

将表 testsync.t_fund_info 重命名为 test.t_user_login_record;

查询正常,0 行受影响(0.05 秒)

检查

< strong>限制语法

使用of limit是MySQL中非常经典的方法,而且它也支持多种模式。

例如只返回第2个结果

select * from x

limit 2

返回第2到第12个结果Result< /p>

或者限制2、10

order by的妙用

如果下面的数据需要排序,

< p>按名称从测试订单中选择*;
+-----+-----+
|编号 |姓名 |
+------+ ------+
| 1 | aa1 |
| 3 | aa10 |
| 4 | aa11 |
| 2 | aa2 |
+-- ----+------+
我们希望按照aa1,aa2,a按照a10,aa11的顺序显示,就这样写。

按名称从测试订单中选择*+0;
+-----+-----+
|编号 |姓名 |
+ ------+------+
| 1 | aa1 |
| 2 | aa2 |
| 3 | aa10 |
| 4 | AA11 |
+------+------+

独特功能

如果需要拦截it 字符串,比如截取数字,可以通过多种方式实现。

例如,t下面的方法是可行的。

mysql> 选择替换('123456G', right('123456G',1), '');

+----- ---------------------------------------+

|替换( '123456G', right('123456G',1), '')

|+------------------------ -------------------+

| 123456                                                                                                              --------------------------------+

或者使用cast来过滤

> select cast('123124aabc' as unsigned);

+--------------------- ----------+

|强制转换('123124aabc'为无符号)|

+------------------------ -------------------+

| 123124 |

+------------ --------------------+

集合中有 1 行,1 个警告(0.01 秒)

“MySQL 特定 SQL 语句简介”的介绍到此结束。感谢您的阅读。如果您想了解更多行业资讯,可以关注网站,小编会输出更多优质实践为大家提供所有文章!

1. 本站所有资源来源于用户上传或网络,仅作为参考研究使用,如有侵权请邮件联系站长!
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 编程技术 > MySQL特定的SQL语句简介

用户评论