示例一:插入多条记录
假设有一个主键为 client_id 的 clients 表,可以使用下面的语句:
INSERT INTO clients(client_id, client_name, client_type)SELECT supplier_id, supplier_name, ''advertising''FROM suppliers
WHERE not exists (select * from clientswhere clients.client_id = suppliers.supplier_id);
WHERE not exists (select * from clientswhere clients.client_id = suppliers.supplier_id);
示例一:插入单条记录
INSERT INTO clients(client_id, client_name, client_type) SELECT 10345, ''IBM'', ''advertising'' FROM dual
WHERE not exists (select * from clients where clients.client_id = 10345);
WHERE not exists (select * from clients where clients.client_id = 10345);
使用 dual 做表名可以让你在 select
语句后面直接跟上要插入字段的值,即使这些值还不存在当前表中。
可以用来判断数据表(数据库)是否存在,若不存在则创建CREATE TABLE IF NOT EXISTS pxl_table(id int(16),name varchar(32));
浙公网安备 33010602011771号