0
我有一個約30個字段的MySQL表。我需要創建一個包含這些字段子集的第二個表格,再加上CURDATE()來跟蹤他們的支出歷史記錄。我得到的語法錯誤,但也許我的方法是不正確的開始。請檢查此,謝謝!如何創建一個新的MySQL表作爲主表中字段的子集?
INSERT INTO history (customer_id, name, amount, date_recorded)
set date_recorded = CURDATE()
SELECT customer_id, name, amount
FROM master;
什麼我試圖在MySQL做在上面的例子是從主客戶列表複製CUSTOMER_ID,名稱,數量的領域,包括今天的日期。對於歷史表中的記錄佈局是在這裏:
+---------------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+------------------+------+-----+---------+----------------+
| id | int(10) unsigned | NO | PRI | NULL | auto_increment |
| customer_id | int(11) | NO | PRI | NULL | |
| name | varchar(255) | NO | | NULL | |
| amount | int(11) | NO | | NULL | |
| date_recorded | date | NO | | NULL | |
+---------------+------------------+------+-----+---------+----------------+
感謝張貼。不會選擇搜索主人當前日期的CURDATE()嗎? 我試了上面,它沒有改變返回這個: 查詢OK,0行受影響(0.00秒) 記錄:0重複:0警告:0 – Edward
沒有它不需要,它會獲取列名的值: customer_id,名稱,金額和'CURDATE()'將從系統返回日期。.. –
明白了!我的錯誤是,我重新創建了表格而沒有重新填充我的測試表。現在就工作,也感謝您的解釋! – Edward