sql >> データベース >  >> RDS >> Mysql

次の無料の一意の4桁の番号を見つける方法

    10,000の可能なすべての値が定義され、それぞれに「使用中」フラグが設定されたテーブルを保存することをお勧めします。このように、番号を解放して再利用することは、「inuse=false」を設定するための簡単な更新です。

    また、利用可能な最低値を簡単に見つけることができます

    SELECT idstring
    FROM idstringtable
    ORDER BY idstring ASC
    WHERE (available = 1)
    LIMIT 1
    

    適切なロック/トランザクションを使用してこれを行うと、2つ以上のリクエストが同じIDを取得するのを防ぐことができます。また、テーブルが小さいため、グローバルテーブルロックを実行してもパフォーマンスに大きな影響はありません。

    そうしないと、番号付けシーケンスの最初の「ギャップ」を見つけようとして、ユーザーテーブルの周りをうろついていることになります。



    1. innoDBテーブルのMySQL全文検索の回避策

    2. R-特殊文字がmysqlに挿入されていません

    3. SpringJDBCテンプレートを使用してmysqlデータベースからタイムスタンプ値を取得する

    4. mysqlコマンドラインユーティリティを使用してmysql内のすべての予約語を一覧表示する方法はありますか