これは非常に基本的なMySQLの質問ですが、私は答えを見つけることができませんでした。次のストアドプロシージャー本体を仮定します。MySQLストアドプロシージャリターンセレクト
DECLARE Existing INT DEFAULT 0;
SELECT SQL_CALC_FOUND_ROWS name FROM users WHERE id = pid LIMIT 1;
SELECT FOUND_ROWS() INTO Existing;
Select Existing;
私はそれを実行すると常に最初のSELECT結果を返します。しかし、私はそれが最後の(SELECT Existing)結果を返すと期待しています。この動作は正常ですか?もしそうなら、どのように私はそれを変更することができます。なぜなら最初の選択はチェックのためだけであり、最後のものは私が必要とするものです。
(実際のロジックは、この異なっている、私はちょうどそれをここに簡素化)
okですが、一時テーブル内の要素数を確認するにはどうすればよいですか?私がどこかでselectを実行すると、それを返して残りを無視します –
@paulsimmons私が信じている変数に選択していない場合 –