SQL語句中where 1 1的基本用法

2021-08-27 06:05:31 字數 634 閱讀 2053

剛才有一位網友說了本文的不足,我再此重新編輯重發一篇整理過的,希望多提意見。

與where 1=1等效的類似語句有1<>2,'a'='a','a'<>'b',其目的是where的條件為永真,得到的結果就是未加約束條件的。那麼where 1=1 有什麼用處呢?

使用一 拼接sql語句

乙個簡單拼接sql語句的例子:

ibatis中的動態語句的拼接與其原理相似,也可以加1=1。

若不使用1=1,拼接會有多麻煩呢?string sql = select * from table student where;這個語句還在,那麼如果三個條件都是空呢?where就是光禿禿了。再設想,若乙個空,乙個不空或者兩個都不空,拼接的語句就不一樣了。這只是兩個條件,要是更多的條件呢?體會到1=1的用處了吧。我們可以發現 or 1 = 1拼在後面可以恆使條件成立。

使用二 拷貝表或複製表結構

拷貝表

create student_bak as select * from student where 1=1;

複製表結構

create student_bak as select * from student where 1<>1;

sql語句中的where 1 1

1 1 永真,1 1 永假 1 1 的用處 用於只取結構不取資料的場合 例如 create table table temp tablespace tbs temp as select from table ori where 1 1 建成乙個與table ori 結構相同的表table temp,...

sql語句中where 1 1的作用

where 1 1 最近看到很多sql裡用到where 1 1,原來覺得這沒用嘛,但是又想到如果沒用為什麼要寫呢?於是在網上 查了查,在這裡就 一下 1 1 永真,1 1 永假。1 1 的用處 用於只取結構不取資料的場合 例如 create table table temp tablespace t...

sql語句中where 1 1的作用

where 1 1 最近看到很多sql裡用到where 1 1,原來覺得這沒用嘛,但是又想到如果沒用為什麼要寫呢?於是在網上 查了查,在這裡就 一下 1 1 永真,1 1 永假。1 1 的用處 用於只取結構不取資料的場合 例如 create table table temp tablespace t...