mysql存儲過程字元串拼接
DROPPROCEDUREIFEXISTS`p_create_view`
CREATEPROCEDUREp_create_view()
BEGIN
DECLAREtableNameVARCHAR(100);
DECLAREstopFlagINT;
DECLAREsql1VARCHAR(1000);
DECLAREcursor_nameCURSORFORSELECTTABLE_NAMEFROMinformation_schema.tablesWHERETABLE_NAMELIKE'test_2014%';
'02000'SETstopFlag=1;
SET@sql1='createviewtestasselectid,namefrom';
OPENcursor_name;
REPEAT
FETCHcursor_nameINTOtableName;
SELECTCONCAT(@sql1,tableName,'UNIONALLSELECTid,nameFROM')INTO@sql1FROMDUAL;
UNTILstopFlagENDREPEAT;
CLOSEcursor_name;
SELECTSUBSTR(@sql1,1,LENGTH(@sql1)-31)INTO@sql1FROMDUAL;
PREPAREstepFROM@sql1;
EXECUTEstep;
END;
2. MySQL中寫存儲過程用到連接字元串函數concat_ws()出錯
簡單的方法是你在存儲過程中列印SQL,
set y_sql=concat_ws(' ','insert','into',tmp4data,'value','(',var1,var2,')');
select y_sql;
看看y_sql合並生什麼, 其次在動態SQL過程中, 你定義的tmp4data到底是變數還是表的名稱,如果是名稱就需要添加分號
3. SQL怎麼拼接字元串
不同的資料庫,相應的字元串拼接方式不同,通過對比加深一下記憶。
一、MySQL字元串拼接
1、CONCAT函數
語法格式:CONCAT(char c1, char c2, ..., char cn) ,其中char代表字元串,定長與不定長均可以
連接兩個字元串
(3)mysql存儲過程字元串拼接擴展閱讀
字元串函數(String processing function)也叫字元串處理函數,指的是編程語言中用來進行字元串處理的函數,如C,pascal,Visual以及LotusScript中進行字元串拷貝,計算長度,字元查找等的函數。
字元串主要用於編程,概念說明、函數解釋、用法詳述見正文,這里補充一點:字元串在存儲上類似字元數組,所以它每一位的單個元素都是可以提取的,如s=「abcdefghij」,則s[1]=「a」,s[10]="j"。
而字元串的零位正是它的長度,如s[0]=10(※上述功能Ansistring沒有。),這可以給我們提供很多方便,如高精度運算時每一位都可以轉化為數字存入數組。
字元串函數的應用
1、連接運算 concat(s1,s2,s3…sn) 相當於s1+s2+s3+…+sn.
例:concat(『11』,'aa』)='11aa』;
2、求子串。 Copy(s,I,I) 從字元串s中截取第I個字元開始後的長度為l的子串。
例:(『abdag』,2,3)=』bda』
3、刪除子串。過程 Delete(s,I,l) 從字元串s中刪除第I個字元開始後的長度為l的子串。
例:s:=』abcde』;delete(s,2,3);結果s:=』ae』
4、插入子串。 過程Insert(s1,s2,I) 把s1插入到s2的第I個位置
例:s:=abc;insert(『12』,s,2);結果s:=』a12bc』
5、求字元串長度 length(s) 例:length(『12abc』)=5
在ASP中 求字元串長度用 len(s)例: len("abc12")=5
6、搜索子串的位置 pos(s1,s2) 如果s1是s2的子串 ,則返回s1的第一個字元在s2中的位置,若不是子串,則返回0.
例:pos(『ab』,』12abcd』)=3
7、字元的大寫轉換。Upcase(ch) 求字元ch的大寫體。
例:upcase(『a』)=』A』
8、數值轉換為數串。 過程 Str(x,s) 把數值x化為數串s.
例:str(12345,s); 結果s=』12345』
9、數串轉換為數值。 過程val(s,x,I) 把數串s轉化為數值x,如果成功則I=0,不成功則I為無效字元的序數,第三個參數也可不傳
例:val(『1234』,x,I);結果 x:=1234
4. MySql資料庫 存數過程 字元串拼接 求教
sqlplus中: exec DELETE_THOROGH_INFO('參數', '參數', '參數'); 函數、過程中: DELETE_THOROGH_INFO('參數', '參數', '參數');
5. Mysql 字元串拼接 截取
給你個思路吧,也沒帶電腦。在c中,單個大寫字母的char的ascii值小於小寫字母。值遍歷這個字元串,找到大寫字母的index並切割,拆成三個,然後加空格拼接。
6. mysql資料庫中字元串拼接問題
mysql不能直接運行動態sql語句的,但是可以寫在存儲過程中,然後調用過程執行,具體如下:
(1)定義存儲過程,示例:
CREATEDEFINER=`root`@`localhost`PROCEDURE`query_extra_table`(table_indexvarchar(255))
BEGIN
SET@sql=concat("select*fromtbl_order_",table_index);
PREPAREstmtFROM@sql;
EXECUTEstmt;
END
(2)調用存儲過程:
CALLquery_extra_table('483')
7. mysql字元串拼接
請參考下列實驗:
-- 00696CBB0B9F轉變成00:69:6C:BB:0B:9F
select '00696CBB0B9F' as strBefore,
concat(
mid('00696CBB0B9F',1,2),':',
mid('00696CBB0B9F',3,2),':',
mid('00696CBB0B9F',5,2),':',
mid('00696CBB0B9F',7,2),':',
mid('00696CBB0B9F',9,2),':',
mid('00696CBB0B9F',11,2)) as strAfter;
8. mysql中字元串的拼接,能不能不使用concat函數
能使用。
MySQL concat函數可以連接一個或者多個字元串,如
select concat('10');
結果:10
select concat('11','22','33');
結果
112233
MySQL的concat函數在連接字元串的時候,只要其中一個是NULL,那麼將返回NULL
select concat('11','22',null);
結果
NULL
9. mysql數據存儲過程
MySQL字元串連接使用CONCAT函數,示例如下: