Mysql
我可以將文本從一列拆分為 My SQL 中的兩個現有列嗎
SELECT `Appointment`, SUBSTRING_INDEX(SUBSTRING_INDEX(`Appointment`, ' ', 1), ' ', -1) AS Date, SUBSTRING_INDEX(SUBSTRING_INDEX(`Appointment`, ' ', 2), ' ', -1) AS Time FROM go_applicants
它將日期和時間分開但創建了 2 個新列,是否可以將此拆分插入/更新到表中的現有列中。
這將允許我將其作為事件執行並不斷更新表格。
儲存在現有列中:
UPDATE go_applicants SET cDate = SUBSTRING_INDEX(`Appointment`, ' ', 1), cTime = SUBSTRING_INDEX(SUBSTRING_INDEX(`Appointment`, ' ', 2), ' ', -1);
製作生成的列:
ALTER TABLE go_applicants ADD COLUMN cDate DATE AS (SUBSTRING_INDEX(`Appointment`, ' ', 1)), ADD COLUMN cTime TIME AS (SUBSTRING_INDEX(SUBSTRING_INDEX(`Appointment`, ' ', 2), ' ', -1));
PS。如果您將某個日期時間值的日期和時間儲存在 2 個單獨的靜態列中 - 在大多數情況下這是“不好的做法”。