case語句在select中的用法,以及,insert和select和case合用的例子

來源:互聯網
上載者:User

 

 

  SQL> select tag_name,tp_name,value from ins_dynamic; TAG_NAME     TP_NAME     VALUE ---------------- --------------- -------------- a                    NoString       1 b                    NoString       2

 

 

 

 

 

SQL> select (case when value='1' then 'value=1' when value='2' then 'value=2' else 'other value' end) tag_name1 from ins_dynamic;

 

 

TAG_NAME1

--------------------

value=1

value=2

 

 

 

 

SQL> insert into ins_dynamic(tag_name,tp_name) select 'zzzz.'||tag_name,(case when value='1' then 'value=1' when value='2' then 'value=2' else 'other value' end) from ins_dynamic;

 

已建立2行。 SQL> select tag_name,tp_name,value from ins_dynamic; TAG_NAME     TP_NAME     VALUE ---------------- --------------- -------------- a                    NoString       1 b                    NoString       2 zzz.a              value=1        NoString zzz.b              value=2        NoString 最後寫一個生猛的 DELETE FROM dict_column_info; INSERT INTO dict_column_info(table_name,column_name,data_type,data_length,is_nullable,is_key)  SELECT t1.table_name,t1.column_name, (case when t1.data_type='VARCHAR2' then 1        when t1.data_type='DATE' then 2        when t1.data_type='NUMBER' AND t1.data_precision=22 AND t1.data_scale=6 then 3        when t1.data_type='NUMBER' AND t1.data_precision=10 AND t1.data_scale=0 then 4        else 0 end), (case when t1.data_type='VARCHAR2' then t1.data_length        when t1.data_type='DATE' then 4        when t1.data_type='NUMBER' AND t1.data_precision=22 AND t1.data_scale=6 then 4        when t1.data_type='NUMBER' AND t1.data_precision=10 AND t1.data_scale=0 then 4        else 0 end), (case when t1.nullable='Y' then 1        when t1.nullable='N' then 0        else -1 end),  (case when (t1.table_name,t1.column_name) IN (SELECT t2.table_name,t2.column_name FROM all_cons_columns t2 where t2.owner = 'ISCS' AND t2.constraint_name IN (SELECT t3.constraint_name FROM all_constraints t3 where t3.owner = 'ISCS' AND t3.constraint_type = 'P')) then 1       else 0 end) from user_tab_columns t1;

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.