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

MySQLは非主キーで自動インクリメントします

    カテゴリツリーを不自然に並べ替える同様の問題に対処する必要がありました。一度に1つのIDのすべての行を挿入する場合は、subIdごとに次のようにすることができます。

    SET @seq = 0;
    INSERT INTO test
      (id,  subId,            text) VALUES
      (_id, @seq := @seq + 1, 'Some text')
    ;
    

    IDに行を「追加」する必要がある場合は、@seqを

    で設定できます。
    SELECT IFNULL(MAX(subId), 0) INTO @seq FROM test WHERE id = _id;
    

    もちろん、これにはmySQLではなくアプリケーションによるidの管理が必要になります。

    最後のコードブロックと同じように実行して、次に使用可能なIDを取得することもできます。



    1. MySQLGROUPBYおよびCOUNT

    2. mysqlの特定のユーザーの合計ログイン-ログアウト時間を計算する

    3. 存在しないためにテーブルを作成する際に、オプションがないか無効です

    4. 不動産業者のデータモデル