sqlに文insertを挿入した後のvaluesキーワードは省略できます
4077 ワード
テーブル名(カラム値)に挿入した後にクエリ文が続くと値を表し、簡単に言えば後のselect selectから出た値が挿入する値、すなわちinsert into tb(フィールド名1、フィールド名2)selectフィールド名1である.フィールド名2 from tbはinsert into tb(フィールド名1、フィールド名2)values(検出されたフィールド値1、検出されたフィールド値1)に等しい.
または
ロット判定挿入
転載先:https://www.cnblogs.com/h-c-g/p/10672845.html
( ) , select select ,
insert into tb( , )select , from tb
insert into tb( , )values( , );
または
( ) , select select ,
insert into tb( , )select , from tb
insert into tb( , )values( , );
SQL : :
teacher id=3 , ;
teacher id=3 , 。
:
① select * from teacher where id=3 , , id=3 , , id=3 ,
② id=3 , not exists , ; ,
select 3,' ',5000 from teacher where not exists (false) limit 1;
select 3,' ',5000 from teacher where true limit 1;
③ 3,' ',5000
④
CREATE TABLE tb ( a int, b int );
-- : VALUES
INSERT INTO tb VALUES(1, 2);
INSERT INTO tb VALUES(1, 3);
GO
-- : SELECT
INSERT INTO tb SELECT 2, 1;
INSERT INTO tb
SELECT 3, 1 UNION ALL
SELECT 3, 2 UNION ALL
SELECT 3, 3;
GO
--
SELECT * FROM tb
GO
a b
----------- -----------
1 2
1 3
2 1
3 1
3 2
3 3
(6 )
ロット判定挿入
uuid, systemName, enviromentType, jobOrderNum, jobName, executeTime, jobLogAddress, status
insert into data_collection_job_info
select
#{item.uuid,jdbcType=VARCHAR},
#{item.systemName,jdbcType=VARCHAR},
#{item.enviromentType,jdbcType=VARCHAR},
#{item.jobOrderNum,jdbcType=INTEGER},
#{item.jobName,jdbcType=VARCHAR},
#{item.executeTime,jdbcType=VARCHAR},
#{item.jobLogAddress,jdbcType=VARCHAR},
#{item.status,jdbcType=INTEGER}
from data_collection_job_info
where not exists(select * from data_collection_job_info where uuid=#{item.uuid, jdbcType=VARCHAR}) limit 1
転載先:https://www.cnblogs.com/h-c-g/p/10672845.html