大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
下文内容主要给大家带来MySQL基础讲义——SQL插入、更新、删除操作流程,这里所讲到的知识,与书籍略有不同,都是创新互联专业技术人员在与用户接触过程中,总结出来的,具有一定的经验分享价值,希望给广大读者带来帮助。
公司主营业务:做网站、成都网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联公司推出雁江免费做网站回馈大家。
使用基本的INSERT语句插入数据要求指定表名称和插入到新记录中的值。
INSERT INTO table_name (column_list) VALUES (value_list);
insert into `TSubject` (subjectID,subjectName,BookName,Publisher)
values ('0004','英语','大学英语走遍美国','清华出版社')
可以不指定插入的列
insert into `TSubject`
values ('0005','高等数学','高等数学教材','清华出版社')
为表的指定字段插入数据,就是在INSERT语句中只向部分字段中插入值,而其他字段的值为表定义时的默认值。
必须制定插入的列
insert into TSubject (subjectID,subjectName)
values ('0006','高等数学2')
insert into TSubject (subjectName,subjectID)
values ('数据结构','0007')
INSERT语句可以同时向数据表中插入多条记录,插入时指定多个值列表,每个值列表之间用逗号分隔开,基本语法格式如下:
INSERT INTO table_name (column_list)
VALUES (value_list1), (value_list2),...,
(value_listn);
示例:
insert into TSubject (subjectName,subjectID)
values ('C#开发','0008'),('苹果开发','0009')
INSERT语句和SELECT语句组成的组合语句即可快速地从一个或多个表中向一个表中插入多个行。
INSERT INTO table_name1 (column_list1)
SELECT (column_list2) FROM table_name2
WHERE (condition)
示例
insert into ST (subectid,subjectName)
select subjectid,subjectName from TSubject where `Publisher` is not null
MySQL中使用UPDATE语句更新表中的记录,可以更新特定的行或者同时更新所有的行。
UPDATE table_name
SET column_name1 = value1,
column_name2=value2,……,
column_namen=valuen
WHERE (condition);
示例:
update `TStudent` set sname=concat(sname,'net') where class='net'
update `TStudent` set sname=left(sname,3) where class='net'
根据学生的生日 在学生的姓名后标记 1988大一 1987年大二 1986年大三 1985年大四
update TStudent set sname=CONCAT(sname,case year(birthday)%5
when 0 then '大四' when 1 then '大三' when 2 then '大二' else '大一' end)
where year(birthday)>=1985 and year(birthday)<=1988
UPDATE table_nameA a join table_nameB b
on a. column_name1=b. column_name1
SET a.column_name1 = value1,
a.column_name2=value2,……,
a.column_namen=valuen
WHERE b. column_name2>20
实例:将有不及格的学生姓名后加*标记
update TStudent a join TScore b on a.`StudentID`=b.`StudentID`
set a.`Sname`=concat(sname,'*') where b.mark<60
同时更改两张表的列
实例:把分数低于60分的学生,加5分,并在学生姓名添加标记+
update TStudent a join TScore b on a.`StudentID`=b.`StudentID`
set a.`Sname`=concat(sname,'+'), b.mark=b.`mark`+5
where b.mark<60;
子查询也能实现相同功能
以下语句将分数有大于98分的学生姓名后加#号标记
update TStudent set Sname=concat(sname,'#') where studentid in
(select studentid from TScore where mark>98);
从数据表中删除数据使用DELETE语句,DELETE语句允许WHERE子句指定删除条件。DELETE FROM table_name [WHERE condition>] ;
删除学号小于00010的学生delete from TStudent where studentid<'00010'
DELETE a FROM table_a a join table_b b on a.column1=b.column1 [WHERE condition>] ;
删除分数小于60分的学生
delete a from TStudent a join TScore b on a.`StudentID`=b.`StudentID`
where b.mark<60
也可以使用子查询实现。
删除分数表中分数大于90的学生delete from TStudent where studentid in (select studentid from TScore where mark>90);
对于以上关于MySQL基础讲义——SQL插入、更新、删除操作流程,如果大家还有更多需要了解的可以持续关注我们创新互联的行业推新,如需获取专业解答,可在官网联系售前售后的,希望该文章可给大家带来一定的知识更新。