Skip to content

Commit 4db4d5c

Browse files
committed
fix *
1 parent 995fedb commit 4db4d5c

File tree

2 files changed

+5
-5
lines changed

2 files changed

+5
-5
lines changed

201306/20130620_01_pic_001.jpg

63.9 KB
Loading

201609/20160926_01.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -438,10 +438,10 @@ select * from tbl where reverse(col) ~ '^def'; -- 后缀查询使用反转函
438438

439439

440440
### QUERY 规范
441-
【强制】不要使用count(列名)或count(常量)来替代count(*),count(*)就是SQL92定义的标准统计行数的语法,跟数据库无关,跟NULL和非NULL无关。
442-
说明:count(*)会统计NULL值(真实行数),而count(列名)不会统计。
441+
【强制】不要使用count(列名)或count(常量)来替代count(```*```),count(```*```)就是SQL92定义的标准统计行数的语法,跟数据库无关,跟NULL和非NULL无关。
442+
说明:count(```*```)会统计NULL值(真实行数),而count(列名)不会统计。
443443

444-
【强制】count(多列列名)时,多列列名必须使用括号,例如count( (col1,col2,col3) )。注意多列的count,即使所有列都为NULL,该行也被计数,所以效果与count(*)一致。
444+
【强制】count(多列列名)时,多列列名必须使用括号,例如count( (col1,col2,col3) )。注意多列的count,即使所有列都为NULL,该行也被计数,所以效果与count(```*```)一致。
445445
例如
446446
```
447447
postgres=# create table t123(c1 int,c2 int,c3 int);
@@ -508,7 +508,7 @@ NULL值与任何值的比较都为NULL,即NULL<>1,返回的是NULL,而不
508508

509509
【强制】除非是ETL程序,否则应该尽量避免向客户端返回大数据量,若数据量过大,应该考虑相应需求是否合理。
510510

511-
【强制】任何地方都不要使用 select * from t ,用具体的字段列表代替*,不要返回用不到的任何字段。另外表结构发生变化也容易出现问题。
511+
【强制】任何地方都不要使用 select ```*``` from t ,用具体的字段列表代替```*```,不要返回用不到的任何字段。另外表结构发生变化也容易出现问题。
512512

513513

514514
### 管理规范
@@ -616,7 +616,7 @@ select f(id) from tbl where id=? and count>0;
616616
可以再根据实际情况设计,原理如上即可。
617617
函数可以如返回布尔,或者唯一ID,或者数字等。
618618

619-
【强制】在函数中,或程序中,不要使用count(*)判断是否有数据,很慢。 建议的方法是limit 1;
619+
【强制】在函数中,或程序中,不要使用count(```*```)判断是否有数据,很慢。 建议的方法是limit 1;
620620
例如
621621
```
622622
select 1 from tbl where xxx limit 1;

0 commit comments

Comments
 (0)