1. 程式人生 > >SQL中1=1與11的使用

SQL中1=1與11的使用

1. 1<>1 的用處:

用於只取結構不取資料的場合

例如:

create table table_temp tablespace tbs_temp as
select * from table_ori where 1<>1
建成一個與table_ori 結構相同的表table_temp,但是不要table_ori 裡的資料。
(除了表結構,其它結構也同理)

2.1=1用於動態SQL

例如:

lv_string = 'select tbl_name,tbl_desc from tbl_test where 1=1 '+l_condition;
當用戶選擇了查詢的名稱'abc'時
l_condition ='and tbl_name = ''abc''';
但是當用戶沒有選擇名稱查詢時l_condition就為空串''這樣
lv_string = 'select tbl_name,tbl_desc from tbl_test where 1=1 ',
執行也不會出錯,相當於沒有限制名稱條件。但是如果沒有1=1的條件,則
lv_string = 'select tbl_name,tbl_desc from tbl_test where ';

這樣就會報錯。

轉自:http://topic.csdn.net/u/20110512/10/11def83d-44b1-461a-beaf-5fdfaf04890d.html