叮当猫咪
INSERT查询不支持WHERE关键字*适用条件是因为您可以为子选择语句使用WHERE条件。您可以使用子选择执行复杂的插入。例如:INSERT INTO suppliers(supplier_id, supplier_name)SELECT account_no, nameFROM customersWHERE city = 'Newark';通过在INSERT语句中放置“SELECT”,可以快速执行多次插入。使用这种类型的INSERT,您可能希望检查插入的行数。在执行INSERT之前,可以通过运行以下SQL语句来确定插入的行数。SELECT count(*)FROM customersWHERE city = 'Newark';可以确保不使用“存在”条件插入重复信息。例如,如果您有一个名为Client_id的表,则可以使用以下语句:INSERT INTO clients(client_id, client_name, client_type)SELECT supplier_id, supplier_name, 'advertising'FROM suppliersWHERE not exists (select * from clientswhere clients.client_id = suppliers.supplier_id);此语句使用子SELECT插入多个记录。如果要插入单个记录,可以使用以下语句:INSERT INTO clients(client_id, client_name, client_type)SELECT 10345, 'IBM', 'advertising'FROM dualWHERE not exists (select * from clientswhere clients.client_id = 10345);双重表的使用允许您在SELECT语句中输入值,即使这些值目前没有存储在表中。另见如何插入WHERE子句