Why I like these SQL tricks - Part 1

Why I like these SQL tricks - Part 1

Trong l?p SQL c?a mình, các b?n h?c viên hay th?c m?c t?i sao có WHERE 1=1, ?ó c?ng chính là ly do mình vi?t bài này nh?m chia s? các tips nh? mình hay dùng khi s? d?ng SQL.

Where 1=1

1=1 k?t qu? trong SQL s? là TRUE, nh? v?y s? d?ng Where 1=1 ngh?a là WHERE TRUE. N?u ch? d?ng l?i ? ?ay thì s? d?ng Where 1=1 kh?ng ?nh h??ng lên k?t qu? c?a Query, nh?ng khi k?t h?p v?i các filters khác thì b?n s? th?y c?ng d?ng c?a nó:

Giúp code c?a b?n d? ch?nh s?a h?n

Khi mu?n thêm 1 filter trong WHERE, b?n ch? ??n gi?n thêm dòng:

Where 1=1
      AND ....
      AND ....        

T??ng t?, b? b?t 1 filter trong WHERE, b?n ch? c?n comment out dòng ?ó

Where 1=1
      AND ....
      -- AND ....        

Ví d?:

Khi mình thêm 1 filter là Category = 'Fashion'

add filter

Khi mình xóa filter Category = 'Fashion', n?u kh?ng có 1=1 b?n s? g?p l?i t?i dòng l?nh 'AND Quantity = 2' vì lúc này, SQL s? hi?u b?n vi?t

WHERE        
      AND Quantity = 2        

Nh?ng khi có 1=1, SQL s? hi?u b?n ?ang dùng 2 filter (1=1) và 'Quantity = 2', lúc này code s? ch?y mà kh?ng g?p l?i n?a.

WHERE 1=1       
      AND Quantity = 2        

b?n kh?ng c?n xóa 'AND' ? dòng code 'AND Quantity = 2'

remove filter

T??ng t?, b?n có th? xóa ho?c thêm b?t kì filters nào mà kh?ng c?n b?n tam v? vi?c sai syntax.


M?i column 1 row và d?u ph?y ??t ? ??u hay cu?i?


V?i mình m?i c?t mình ??u xu?ng dòng, vì...

d? nhìn, d? debug và khi ??a code cho ng??i khác ??c h? c?ng d? hi?u h?n

Ví d?:

One col, one row

V?y d?u ph?y ng?n cách m?i column nên ??t ? ??u hay cu?i. Mình là fan c?a vi?c ??t d?u ph?y ? ??u, vì ...

d? thêm và b?t 1 column khi code

Ví d?, khi mình comment out 1 column 'Item_name' và ch?y code, mình s? g?p l?i vì d? 1 d?u "," sau CustomerID


Nh?ng, khi mình ??t d?u ph?y ? ??u cau, thì cau Query kh?ng b? l?i. Vì lúc này b?n kh?ng còn d? d?u "," nào n?a.

Start the column with a comma

Cám ?n b?n ?? ??c bài vi?t !!!

N?u b?n có h?ng thú v?i các bài chia s? c?a mình thì có th? tham kh?o thêm các bài vi?t d??i ?ay ho?c subcribe kênh YouTube c?a mình t?i ?ay:

1) Mình tr? thành Data Analyst nh? th? nào? Link

2) Mình h?c gì ?? tr? thành Data Analyst? Link

3) Hành trình làm data analyst t? Vi?t Nam sang ??c (Sponsor Visa) Link

?? l?i bình lu?n và t??ng tác ?? mình có thêm ??ng l?c vi?t ti?p Part 2 nha !!!










v? d?u "," ? ??u hay cu?i n?u xét ? v?n ?? thêm hay b?t 1 column thì mình th?y g?n gi?ng nhau th?i vì n?u xoá c?t ??u tiên thì ph?i kèm theo ?ó là d?u "," ? tr??c column th? 2, n?u kh?ng s? b? l?i. Truoc gi? mình ?? d?u "," ? ??u là ban ??u là ?? d? nhìn m?y ch? có CASE WHEN. ngh? t?i c?nh ??i khi ph?i CASE WHEN 4,5 c?p mà ?? d?u "," ? cu?i thì mình th?y khó ? r?i ?ó. Còn v? WHERE 1=1 thì x?a gi? mình ko bao gi? dùng trick này vì ki?u gì c?ng s? ?nh h??ng t?i th?i gian ch?y code. Dù 1=1 lu?n ?úng thì sql c?ng ph?i ch?y 1 phép so sánh m?i th?y nó ?úng ch? làm gì có chuy?n máy tính nó m?c ??nh ???c 1 lúc nào c?ng = 1. ??i l?i chia s?

回复
Natalie Bao-Ngoc N.

Strategy, Data, Gentle Growth ??

1 年

Thanks em for sharing! there are also two of my personal favorites :)

要查看或添加评论,请登录

Duy Bui的更多文章