mysql常用指令 / mysql常用命令 / mysql常用语句 / mysql常用sql
mysql事务。事务默认是自动提交的。
(事务是用来做数据控制的,所以只针对DML(数据操控,增/删/改)起作用。建表和删除表属于DDL(数据定义),超出事务的范畴,所以事务对DDL不起作用。 )
START TRANSACTION;
-- DML here
ROLLBACK;
mysql临时表
CREATE TEMPORARY TABLE tmp_table SELECT *FROM emax_base.`tax_user_sign` WHERE merchant_id=1576834320215107;
-- select * from tmp_table
UPDATE tmp_table SET merchant_id=1576647918146389, create_time='2020-7-28 15:00:00',tax_sign_status='FAILED';
INSERT emax_base.`tax_user_sign` SELECT * FROM tmp_table;
mysql select语句中显示行的自增序号
SELECT (@i:=@i+1) AS rownum, a.entName ,a.orderId FROM `t_business_airorders202007` a,(SELECT @i:=0) AS it
mysql 多表关联update
update tmp_table2 a
join tmp_table1 b ON a.rownum=b.rownum
join t_business_airorders202008 c on a.orderId=c.orderId
set c.entName=b.entName;
mysql 表关联删除
DELETE t1 FROM t1,t2 WHERE t1.id=t2.id ;
DELETE m
FROM tmp m
JOIN tmp2 b ON m.usr=b.usr AND m.id>b.minId;
在mysql中修改表名的sql语句(DDL)
ALTER TABLE emax_require RENAME TO `require`;
字符串与时间互转(varchar<->datetime)
两个函数:date_format(date, format) str_to_date(str, format)
now() date_format(now(), '%Y%m%d%H%i%S')
------------------- ------------------------------------
2021-12-21 15:02:32 20211221150232
str_to_date('20160102123059', '%Y%m%d%H%i%S')
-----------------------------------------------
2016-01-02 12:30:59
mysql数据类型转换用cast函数
需要说的是
把数据转换为字符串时,用cast(var as char),注意是char,不是varchar
把字符串转换为数字,用cast(str as SIGNED/UNSIGNED/DECIMAL) 其中type说明: 浮点数 : DECIMAL 整数 : SIGNED 无符号整数 : UNSIGNED 。 当然,数字字符串可以直接用作数字来操作。例如select '1'+2 结果是 3.