検索

ホームページ  >  に質問  >  本文

SELECT 結果から値を返す MySQL 関数を作成する

この関数を mySql 8 で作成したいと考えています。 00001,00002 のようなシリアル番号

が作成されます。 リーリー

このクエリの何が問題なのかわかりませんが、常にこのエラーが発生します。

リーリー

このクエリも試してみました。

リーリー

しかし、それでも同じエラーが発生します。私の関数クエリで何が問題になる可能性がありますか?

P粉685757239P粉685757239238日前468

全員に返信(1)返信します

  • P粉905144514

    P粉9051445142024-04-03 09:46:44

    リーリー

    複数のデータ型変換は冗長です - MySQL は、操作のコンテキストに基づいてデータ型を暗黙的に変更します。

    すべての操作は 1 つのステートメントで実行できるため、変数の宣言と BEGIN-END (および区切り文字の再割り当て) の両方が不要になります。

    コードでは、数値データ型に変換するために lastNumber が必要です。そうしないと、厳密な SQL モードではあなたのコードと私のコードの両方が失敗します。したがって、lastNumber CHAR(255) 入力パラメータのデータ型を UNSIGNED / INT に変更することをお勧めします。これにより、値の誤りを関数コード内ではなく関数呼び出しの段階で検出できるようになります。

    返事
    0
  • キャンセル返事