Yes, you can. Instead, you can try the following:
INSERT INTO keyword_history ( keyword_id, searchengine, location, rec_date, currentrank ) SELECT keyword_id, searchengine, location, curdate(), '4' FROM keyword_history WHERE history_id = 21;
EDIT: Updated field names according to the comments below.
source share