말러83

조건문을 정확하게 써라

update `table` set `a` = 0 where `b` = 'c' and !`d`
update `table` set `a` = 0 where `b` = 'c' and `d` = 0
이런 쿼리가 있을 때 만약 `d` 값이 공백이거나 false 값이거나한 경우를 모두 체크하는 게 아니라 0인 경우만 체크하는 것이라면 아래와 같이 쓰는 것이 훨씬 빠르네요.
지금까지 조건문을 위와 같이 loose comparison을 하는 식으로 즐겨썼는데, 속도 차이가 엄청나게(제 경우에 10배 이상) 나는 것을 체감해보고는 이제는 아래와 같은 방식으로 무조건 씁니다.
|

댓글 10개

잘은 모르지만 ㅠ 작은 차이가 명품을 만듭니다. ㅊㅊ
저는 처음방식이 가능하다는걸 처음 알았습니다.ㅡ,.ㅡ
MySQL은 가능한가보군요.. 헐. 오라클이 주업종이라;;;
저도 처음 ㅡㅡ땀
흐으 저번에 인덱스 하면서 같이 안사실인데 where 변수값이 작을수록 조건문이 정확할수록

빠르더라고요 ㅡ,.ㅡ 4천만건 데이터 0.2초 달성...
조건문은 무조건 정확한 값을 지정하게 해주는게 빨라요.
그렇죠 ㅋㅋ 정확하게~~~
and,or과 &&|| 에서는 속도차 없나요?
작은차이가 명품~ 멋진말이네용
ㅋㅋ 쿼리..깔끔하면 굿~ ㅋ
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
13년 전 조회 3,209
13년 전 조회 6,951
13년 전 조회 2,382
13년 전 조회 3,067
13년 전 조회 2,661
13년 전 조회 1,805
13년 전 조회 2,633
13년 전 조회 2,074
13년 전 조회 1,964
13년 전 조회 7,449
13년 전 조회 2,209
13년 전 조회 1,772
13년 전 조회 4,080
13년 전 조회 2,433
13년 전 조회 4,831
13년 전 조회 2,646
13년 전 조회 2,285
13년 전 조회 1,845
13년 전 조회 1,821
13년 전 조회 2,079
13년 전 조회 2,272
13년 전 조회 2,999
13년 전 조회 2,265
13년 전 조회 3,443
13년 전 조회 2,344
13년 전 조회 5,449
13년 전 조회 4,629
13년 전 조회 6,192
13년 전 조회 8,777
13년 전 조회 4,031
13년 전 조회 3,469
13년 전 조회 1,856
13년 전 조회 4,176
13년 전 조회 2,073
13년 전 조회 5,600
13년 전 조회 3,774
13년 전 조회 3,061
13년 전 조회 2,918
13년 전 조회 7,238
13년 전 조회 3,047
13년 전 조회 2,715
13년 전 조회 2,581
13년 전 조회 4,152
13년 전 조회 4,099
13년 전 조회 2,480
13년 전 조회 2,669
13년 전 조회 5,903
13년 전 조회 1,959
13년 전 조회 2,437
13년 전 조회 2,743
13년 전 조회 3,157
13년 전 조회 3,158
13년 전 조회 2,910
13년 전 조회 6,026
13년 전 조회 2,365
13년 전 조회 7,366
13년 전 조회 2,853
13년 전 조회 2,924
13년 전 조회 2,624
13년 전 조회 2,296
13년 전 조회 3,037
13년 전 조회 2,045
13년 전 조회 3,541
13년 전 조회 1,871
13년 전 조회 1,849
13년 전 조회 4,495
13년 전 조회 2,294
13년 전 조회 1,923
13년 전 조회 1,785
13년 전 조회 2,277
13년 전 조회 3,464
13년 전 조회 1,919
13년 전 조회 2,814
13년 전 조회 2,014
13년 전 조회 1,962
13년 전 조회 3,785
13년 전 조회 2,201
13년 전 조회 2,402
13년 전 조회 1,854
13년 전 조회 2,834
13년 전 조회 1,908
13년 전 조회 2,046
13년 전 조회 1,768
13년 전 조회 1,804
13년 전 조회 1,839
13년 전 조회 1,895
13년 전 조회 3,052
13년 전 조회 2,073
13년 전 조회 2,177
13년 전 조회 3,058
13년 전 조회 2,236
13년 전 조회 3,843
13년 전 조회 1,734
13년 전 조회 4,401
13년 전 조회 1,844
13년 전 조회 4,649
13년 전 조회 2,219
13년 전 조회 2,208
13년 전 조회 2,529
13년 전 조회 1,513