Đây là một giải pháp mà bạn có nhiều trường trong bảng và không muốn để có được một chuột rút ngón tay từ gõ tất cả các lĩnh vực, chỉ cần gõ những cái cần thiết :)
Làm thế nào để sao chép một số hàng vào cùng một bảng, với một số lĩnh vực có giá trị khác nhau:
- Tạo một bảng tạm thời với tất cả các hàng bạn muốn sao chép
- cập nhật tất cả các hàng trong Tempora bảng ry với các giá trị bạn muốn
- Nếu bạn có một lĩnh vực tự động tăng, bạn nên đặt nó vào NULL trong bảng tạm thời
- Sao chép tất cả các hàng của bảng tạm thời vào bảng ban đầu của bạn
- Xóa bảng tạm thời
mã của bạn:
CREATE table temporary_table AS SELECT * FROM original_table WHERE Event_ID="155";
UPDATE temporary_table SET Event_ID="120";
UPDATE temporary_table SET ID=NULL
INSERT INTO original_table SELECT * FROM temporary_table;
DROP TABLE temporary_table
chung đang kịch bản:
CREATE table temporary_table AS SELECT * FROM original_table WHERE <conditions>;
UPDATE temporary_table SET <fieldx>=<valuex>, <fieldy>=<valuey>, ...;
UPDATE temporary_table SET <auto_inc_field>=NULL;
INSERT INTO original_table SELECT * FROM temporary_table;
DROP TABLE temporary_table
đang Giản/ngưng tụ:
CREATE TEMPORARY TABLE temporary_table AS SELECT * FROM original_table WHERE <conditions>;
UPDATE temporary_table SET <auto_inc_field>=NULL, <fieldx>=<valuex>, <fieldy>=<valuey>, ...;
INSERT INTO original_table SELECT * FROM temporary_table;
Như tạo ra các bảng tạm thời sử dụng các từ khóa TEMPORARY
nó sẽ bị bỏ tự động khi kết thúc phiên (như @ ar34z gợi ý).
Nguồn
2013-03-11 17:02:28
là có cách nào để làm điều đó mà không cần phải xác định các cột? – Andrew
Không phải là tôi biết. Tất nhiên, nếu bảng của bạn có 1000 cột hoặc một cái gì đó và bạn không muốn nhập tất cả chúng, thì bạn có thể viết một câu lệnh SQL để xây dựng câu lệnh SQL của bạn :). Cách bạn sẽ làm điều đó là sử dụng information_schema để lấy tên cột cho bảng. Nhưng đó thực sự là quá mức cần thiết, tôi chỉ cần gõ tên cột. – dcp
chính xác ví dụ tôi cần, cảm ơn. Tôi đã không chắc chắn nếu bạn có thể làm điều đó theo cách đó. – salonMonsters