常用sql语句记录

知识点:《知识点会继续追加》
1、AUTO_INCREMENT --自增
eg: `ID` int NOT NULL AUTO_INCREMENT ,


2.指定固定列做索引

-- 未指定索引名
EXPLAIN SELECT * FROM t_text t
WHERE number='number1-2' AND t.id='001' ;
-- 指定USE INDEX('索引名')
EXPLAIN SELECT * FROM t_text t USE INDEX(index_id)
WHERE number='number1-2' AND t.id='001' ;


3.insert into |replace INTO | INSERT IGNORE INTO
replace INTO: 先删除再插入
INSERT IGNORE INTO : 查询(通过主键或unique索引)存在则更新否则插入

-- id number为主键或 是一个 UNIQUE索引列
INSERT IGNORE INTO t_text(
`id`,`name`,`number`
)
VALUES('001','name1-1','number1-1')
ON DUPLICATE KEY UPDATE
`name` = VALUES(`name`),
`number` = VALUES(`number`);
-- 批量操作
INSERT IGNORE INTO t_text(
`id`,`name`,`number`
)
VALUES('001','name1-1-1','number1-2'),
('002','name2-1-1','number2-2'),
('003','name3-1-1','number3-2')
ON DUPLICATE KEY UPDATE
`name` = VALUES(`name`),
`number` = VALUES(`number`);


4. 控制流程函数
1)case-when-then-else-end
case
when 条件 1 then 值1
when 条件 2 then 值2
when 条件 3 then 值3
else 值default
end
2)if (条件,value1,value2) 等价 三目用算
if(id > 1,'2' ,"3");

5.mysql长度问题
int 默认存储长度为32位,
int(11)表示存储的字段显示长度,与存储无关
vchar 是动太扩容存储
vchar(25 )表示值的长度,汉字也是25个


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值