where 1=1?
是為了避免where 關鍵字后面的第一個詞直接就是 “and”而導致語法錯誤。
where后面總要有語句,加上了1=1后就可以保證語法不會出錯!?
select * from table where 1=1
因為table中根本就沒有名稱為1的字段,所以該SQL等效于select * from table,
這個SQL語句很明顯是全表掃描,需要大量的IO操作,數據量越大越慢,
建議查詢時增加必輸項,即where 1=1后面追加一些常用的必選條件,并且將這些必選條件建立適當的索引,效率會大大提高?
拷貝表?
createtabletable_name
as
select*fromSource_table
where1=1;
復制表結構?
createtabletable_name
as
select*from
Source_tablewhere1<>1;