1

私は以下のようなストアドプロシージャを持っています:

SET temp_Today = SUBSTR(( NOW() + 0) FROM 3 FOR 6);
SET temp_LastIdDoc = CONCAT(temp_Today,temp_IdAgency);
SELECT NumDoc FROM tbldocument WHERE NumDoc REGEXP '^temp_LastIdDoc';

「temp_LastIdDoc」で始まる NumDoc を検索するため、間違っていることはわかっています。このクエリで temp_LastIdDoc をパラメーターとして使用するにはどうすればよいですか? 別の質問は、その後に来る文字を4文字に制限するにはどうすればよいですか?

4

2 に答える 2

2

文字列は変数temp_LastIdDocで始まり、4文字で終わります(....$

SELECT NumDoc FROM tbldocument 
  WHERE NumDoc REGEXP CONCAT('^',temp_LastIdDoc,'....$');
于 2012-12-29T11:52:47.193 に答える
1

このように使用できます-

SET temp_LastIdDoc = CONCAT('^', temp_Today, temp_IdAgency);
SELECT NumDoc FROM tbldocument WHERE NumDoc REGEXP temp_LastIdDoc;
于 2012-12-29T11:47:00.847 に答える