目录
1、查询一个表,然后根据查询内容更新同一张表
正确用法:
UPDATE test_table SET param = 'xxx' where id in
(select id from
(SELECT id FROM test_table WHERE param2 = 'yyy' AND param3 IS NULL) AS a
);
错误用法,报错信息:You can't specify target table 'test_table' for update in FROM clause【意为:不能先select出同一表中的某些值,再update这个表(在同一语句中)】:
UPDATE test_table SET param = 'xxx' where id in
(SELECT id FROM test_table WHERE param2 = 'yyy' AND param3 IS NULL);
2、查询条件中判断字段含有特定字符串
使用“like”,用法如下:
SELECT * FROM test_table where id LIKE '%abc%';
3、查询条件判断字段为空&不为空
使用“is null”和“is not null”,用法如下:
SELECT * FROM test_table where a IS NULL AND b IS NOT NULL;
4、mysql注释
注意最后一种“--”后面有空格
#xxx
/*xxx*/
-- xxx
5、如何查看mysql表字段是否区分大小写
执行如下命令:
> show variables like 'lower%'
lower_case_table_names:0(区分大小写),1(不区分大小写)
参考:https://blog.csdn.net/zhengchaooo/article/details/79881106
6、在某个字段后扩表字段
ALTER TABLE test_table ADD xxx varchar(64) DEFAULT NULL COMMENT '字段含义' AFTER yyy;
7、删除某个表字段
ALTER TABLE test_table DROP COLUMN xxx;
8、修改表字段长度
ALTER TABLE test_table MODIFY COLUMN xxx varchar(32);