1. 常用SQL编写规范
select
- 每个字段独占一行。逗号写在字段前面。
- from谓词后如果有多个表,则每个表名占一行,逗号写在表名称前面。
- where 条件中,如过有多个and / or 条件,则每个条件占一行,并且and/or在行首
- 等号”=”左右保留一个空格。
SELECT col1 AS col1
,col2 AS col2
,col3 AS col3
FROM table1 t1
,table2 t2
WHERE t1.col1 = t2.col1
AND t1.col2 = t2.col2;
insert
- 每个字段占一行,逗号写在字段名前面。
- SQL关键字左对齐,字段和值对应关键字缩格统一2个或者4个。
INSERT INTO table1 (
col1
,col2
,col3
)
VALUES (
1
,'col2'
,'col3'
);
update/delete
- 每个字段占一行,逗号写在字段前面。
- 等号”=”左右保留一个空格。
- where 条件中如果存在多个 and / or > * 则每个条件占一行,并且and/or在行首。
- 关键字update、set 、where、and 等右对齐(以update/delete为基准)
UPDATE table1
SET col2 = 'test'
,col3 = 'test'
WHERE col1 = 1;
2. 一些开发建议
- 建议: 使用prepared statement,可以提供性能并且避免SQL注入。
- 建议: SQL语句中IN包含的值不应过多。
- 建议: UPDATE、DELETE语句不使用LIMIT。
- 建议: WHERE条件中必须使用合适的类型,避免MySQL进行隐式类型转化。