말러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년 전 조회 1,892
13년 전 조회 5,629
13년 전 조회 1,058
13년 전 조회 1,719
13년 전 조회 1,328
13년 전 조회 511
13년 전 조회 1,316
13년 전 조회 788
13년 전 조회 634
13년 전 조회 6,143
13년 전 조회 874
13년 전 조회 468
13년 전 조회 2,811
13년 전 조회 1,192
13년 전 조회 3,549
13년 전 조회 1,371
13년 전 조회 1,072
13년 전 조회 590
13년 전 조회 578
13년 전 조회 828
13년 전 조회 1,019
13년 전 조회 1,742
13년 전 조회 1,056
13년 전 조회 2,151
13년 전 조회 1,104
13년 전 조회 4,207
13년 전 조회 3,373
13년 전 조회 4,943
13년 전 조회 7,538
13년 전 조회 2,788
13년 전 조회 2,233
13년 전 조회 653
13년 전 조회 2,967
13년 전 조회 845
13년 전 조회 4,341
13년 전 조회 2,478
13년 전 조회 1,861
13년 전 조회 1,632
13년 전 조회 5,941
13년 전 조회 1,763
13년 전 조회 1,451
13년 전 조회 1,321
13년 전 조회 2,838
13년 전 조회 2,861
13년 전 조회 1,175
13년 전 조회 1,381
13년 전 조회 4,626
13년 전 조회 696
13년 전 조회 1,160
13년 전 조회 1,472
13년 전 조회 1,890
13년 전 조회 1,920
13년 전 조회 1,691
13년 전 조회 4,803
13년 전 조회 1,144
13년 전 조회 6,119
13년 전 조회 1,591
13년 전 조회 1,691
13년 전 조회 1,397
13년 전 조회 1,054
13년 전 조회 1,780
13년 전 조회 796
13년 전 조회 2,295
13년 전 조회 634
13년 전 조회 641
13년 전 조회 3,287
13년 전 조회 1,096
13년 전 조회 753
13년 전 조회 578
13년 전 조회 1,073
13년 전 조회 2,244
13년 전 조회 690
13년 전 조회 1,560
13년 전 조회 783
13년 전 조회 763
13년 전 조회 2,577
13년 전 조회 1,018
13년 전 조회 1,228
13년 전 조회 660
13년 전 조회 1,675
13년 전 조회 687
13년 전 조회 844
13년 전 조회 591
13년 전 조회 654
13년 전 조회 630
13년 전 조회 740
13년 전 조회 1,935
13년 전 조회 993
13년 전 조회 1,104
13년 전 조회 2,005
13년 전 조회 1,151
13년 전 조회 2,792
13년 전 조회 652
13년 전 조회 3,313
13년 전 조회 785
13년 전 조회 3,601
13년 전 조회 1,166
13년 전 조회 1,130
13년 전 조회 1,470
13년 전 조회 450
🐛 버그신고