簡體   English   中英

在mysql中根據其ID增加一列

[英]Increment a column based on its id in mysql

我正在制作一個拖放的可排序列表。 我正在嘗試做的是在輸入新記錄時根據其id值自動在MySql中增加一列。 即:

  • 如果我有一個id為3的行,並且它是為該ID設置的第一條記錄,則其recordid = 1。
  • 如果我有一個id為14的行,並且它是為該ID設置的第一條記錄,則其recordid = 1。
  • 如果我有一個id為3的行,並且它是為該ID設置的第二條記錄,則其recordid = 2。

因此,我希望它根據其id值自動遞增recordid。 不是整個表的值。 有道理嗎? 我需要什么代碼在php中查找與id有關的最高值recordid,然后在輸入新記錄時將其遞增1? 提前致謝。

像這樣嗎

INSERT INTO `table` (`id`, `recordid`) VALUES
(
    $id,
    (SELECT MAX(`recordid`) + 1 AS `rid` FROM `table` WHERE `id` = $id)
);

您可能可以進一步優化它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM