1. CASE WHEN 運算式有兩種形式複製代碼 代碼如下:--簡單Case函數 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜尋函數 CASEWHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他' END 2. CASE WHEN 在語句中不同位置的用法2.1 SELECT CASE WHEN 用法複製代碼
☆ 擷取資料庫所有表名,表的所有列名 select name from sysobjects where xtype='u' select name from syscolumns where id=(select max(id) from sysobjects where xtype='u' and name='表名')☆ 遞迴查詢資料Sql語句裡的遞迴查詢 SqlServer2005和Oracle 兩個版本以前使用Oracle,覺得它的遞迴查詢很好用,就研究了一下SqlServer,
再寫一個預存程序時, 用到了如下sql語句 複製代碼 代碼如下:SELECT MAX(RE_DATE) INTO V_RE_DATE FROM T_RECORDING WHERE ID ='100010010102' 按理說,根據這個條件查詢的結果應該為sqlcode=1403 ,但是奇怪的是如下sql異常卻捕獲不到: 複製代碼 代碼如下:EXCEPTION WHEN NO_DATA_FOUND THEN NULL; WHEN OTHERS THEN ERR_CODE :=-2000; ERR_
1 The syntax of the SQL statement is verified. SQL的語法檢查 2 The data dictionary is searched to verify table and column definitions. 從資料字典檢查表名和欄位名 3 The data dictionary is searched to verify security privileges on relevant objects. 從資料字典中檢查許可權 4 Parse
首先,建立一個預存程序 get_clob: t_name:要查詢的表名;f_name:要查詢的欄位名;u_id:表的主鍵,查詢條件;l_pos:截取的開始位置; l_amount :截取長度; CREATE OR REPLACE PROCEDURE get_clob(t_name in varchar2, f_name in varchar, u_id in integer, l_pos in integer, l_amount in BINARY_INTEGER, ReturnValue
寫一個迴圈刪除的過程。 create or replace procedure delBigTab(p_TableName in varchar2,p_Condition in varchar2,p_Count in varchar2) as pragma autonomous_transaction; n_delete number:=0; begin while 1=1 loop EXECUTE IMMEDIATE 'delete from '||p_TableName||'
SQL中的單記錄函數1.ASCII返回與指定的字元對應的十進位數;SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual; A A ZERO SPACE--------- --------- --------- --------- 65 97 48