条件付きでMySQLのINSERT文

質問を見てのプロセスにおける今日の参加者は、おそらくそれは、このようにされている、あなたは彼らがカバーされたときにINSERT文を実行するための条件を満たしたときに状況は条件が挿入考慮していない満足していなかったまで、言うことを意味し書かれた
insert into table_name(column...)values(value...)
、このような文。だから、その質問にはそれがありません。
良い復習を入れて、今日の文を挿入します。

第一种情况插入指定字段
insert into table_name(column1,column2)values(value1,value2);
第二种情况插入所有字段:前提条件是字段顺序必须与表中字段顺序一致
insert into table_name values(value1,value2);
第三种情况批量插入数据
insert into table_name values (value1,value2),(value1,value2);
也可以指定插入批量数据
insert into table_name(column1,column2) values(value1,value2),(value1,value2);
第四种情况就是当满足了指定条件时才插入数据
insert into (column1,column2) select value1,value2 from table_name where ...
也就是后面select子句中查询出来的列作为前面的值插入到表中,但是这个列的个数要和前面的字段个数一致。select子句就可以随便写了。
例如
insert into dept(deptno,dname,loc) select 11,dept.dname,dept.loc from dept where deptno=22;

尚、基本的な文法を削除し、選択し、更新を確認し
たレコードを選択するために使用されるサブクエリが条件を満たしている、だけでなく、頻繁にクエリを使用選択
ページを発注することにより、グループ化条件の順序を有する基場による条件グループは、フィールドの制限オフセット0 table_nameのから選択フィールドを量は、
集約関数sum()、AVG()、上の最大値()、分() 等のような情報の学生が80以上の分を平均化照会する必要性などの条件は、SQL文書かれるべき場所バックに配置することはできません
select * from student group by score having avg(score)>80;
一般的なグループそれは集計関数で組み合わせて使用する必要があります。

レコード更新するための更新
更新TABLE_NAMEセットカラム=値条件。

レコードが削除する削除
table_nameの条件から削除します。

おすすめ

転載: www.cnblogs.com/jasonboren/p/11575077.html