insert 与 select 的联合使用

简介: insert 与 select 的联合使用

下面介绍Mysql和Sqlite和Sqlserver中,根据select的条件判断是否插入。例如:

一、Mysql中:
INSERT INTO books (name) SELECT 'msg' FROM dual WHERE NOT EXISTS (SELECT id FROM books WHERE id = 1)
二、Sqlite中:

由于Sqlite中没有临时表:dual

所以,需要这样写

INSERT INTO books (name)  SELECT 'msg'  WHERE NOT EXISTS (SELECT id FROM books WHERE id = 1)
三、Sqlserver中:

SqlServer中需要另一种写法:

IF NOT EXISTS (SELECT id FROM books WHERE id = 1)  INSERT INTO books (name) SELECT 'msg'
目录
相关文章
|
2天前
|
存储 SQL 关系型数据库
SELECT INTO
【11月更文挑战第08天】
10 2
|
21天前
|
前端开发 容器
select
【10月更文挑战第20天】
30 5
|
3月前
|
存储 关系型数据库 数据库
在 Postgres 中使用 Insert Into Select
【8月更文挑战第11天】
100 0
在 Postgres 中使用 Insert Into Select
|
SQL 数据库
INSERT DESC UPDATE SELECT
INSERT DESC UPDATE SELECT
98 0
|
数据库 OceanBase
使用 `INSERT INTO table_name SELECT * FROM table_name` 这种方式
使用 `INSERT INTO table_name SELECT * FROM table_name` 这种方式
74 1
insert into 和insert into select性能比较
insert into 和insert into select性能比较
210 0
|
SQL 关系型数据库 PostgreSQL
pg 支持insert select吗
是的,PostgreSQL支持INSERT SELECT语法。使用INSERT SELECT语法,您可以将SELECT语句的结果插入到目标表中。 下面是一个示例INSERT SELECT语句的语法: ```sql INSERT INTO target_table (column1, column2, column3, ...) SELECT column1, column2, column3, ... FROM source_table WHERE condition; ``` 在这个示例中,`target_table`是要插入数据的目标表,`source_table`是要从中选择数据的
448 0
|
数据库 索引
SELECT
SELECT
65 0
|
存储 前端开发 JavaScript
select2 使用详解
select2 使用详解
|
存储 SQL 缓存
到底为什么不建议使用SELECT *?
“不要使用SELECT *”几乎已经成为了MySQL使用的一条金科玉律,就连《阿里Java开发手册》也明确表示不得使用`*`作为查询的字段列表,本文从4个方面给出理由。
到底为什么不建议使用SELECT *?