私は次のテーブル構造を持っており、今日の日付の後に「2012061000001」のように00001が続くエントリが必要な列vidがあります。次回テーブルが更新されると、vidは「20120610000002」になります。明日のテーブルが更新される場合、vidは2012061100003になります。
+----+------+-------------+---------+------------+-------------+
| id | vid | visitorname | company | contact | whometomeet |
+----+------+-------------+---------+------------+-------------+
| 1 | NULL | rakesh | godrej | 9987654123 | abcdef |
| 2 | NULL | samir | infosys | 9987654123 | abcdef |
+----+------+-------------+---------+------------+-------------+
どうすればこれを達成できますか?
これが私のテーブル構造で、id を auto_increment として設定します。2 つのフィールド auto_increment を使用できますか
+-------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| vid | varchar(15) | YES | | NULL | |
| visitorname | varchar(255) | YES | | NULL | |
| company | varchar(255) | YES | | NULL | |
| contact | varchar(30) | YES | | NULL | |
| whometomeet | varchar(255) | YES | | NULL | |
+-------------+--------------+------+-----+---------+----------------+
そして、次のクエリを実行すると、以下のような結果が得られました
訪問者 (vid) 値に挿入 (concat(replace(left(current_timestamp,10),'-',''),lpad('1','5','0')));
+----+---------------+-------------+---------+------------+-------------+
| id | vid | visitorname | company | contact | whometomeet |
+----+---------------+-------------+---------+------------+-------------+
| 1 | NULL | rakesh | godrej | 9987654123 | abcdef |
| 2 | NULL | samir | infosys | 9987654123 | abcdef |
| 3 | 2012061000001 | NULL | NULL | NULL | NULL |
+----+---------------+-------------+---------+------------+-------------+
しかし、問題は、明日もこのクエリを実行すると、vidでその1が取得されるたびに、明日の日付が取得されますが、その後に00001が続き、00002が必要です。