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 语句简介”的介绍到此结束。感谢您的阅读。如果您想了解更多行业资讯,可以关注网站,小编会输出更多优质实践为大家提供所有文章!
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 编程技术 > MySQL特定的SQL语句简介