当前位置: 首页 > news >正文

做网站 大文件html5手机网站开发视频

做网站 大文件,html5手机网站开发视频,wordpress 手机管理,深圳宝安医院的网站建设目录 数据库约束 约束类型 NULL约束 UNIQUE#xff1a;唯一约束 DEFAULT#xff1a;默认值约束 PRIMARY KEY#xff1a;主键约束 FOREIGN KEY#xff1a;外键约束 表的设计 一对一关系 一对多关系 多对多关系 查询 聚合查询 聚合函数 GROUP BY子句 HAVING …目录 数据库约束 约束类型 NULL约束 UNIQUE唯一约束 DEFAULT默认值约束 PRIMARY KEY主键约束 FOREIGN KEY外键约束 表的设计 一对一关系 一对多关系 多对多关系 查询  聚合查询 聚合函数 GROUP BY子句 HAVING 联合查询 内连接 外连接 子查询 单行子查询 多行子查询 合并查询 MySQL数据库管理不仅仅包括基本的增删改查操作还涵盖了许多进阶主题如约束、表的设计、聚合查询和联合查询。本文将深入探讨这些高级概念帮助你更好地理解MySQL数据库。 数据库约束 约束类型 · NOT NULL - 指示某列不能存储 NULL 值。 · UNIQUE - 保证某列的每行必须有唯一的值。 · DEFAULT - 规定没有给列赋值时的默认值。 · PRIMARY KEY - NOT NULL 和 UNIQUE 的结合。确保某列或两个列多个列的结合有·     唯一标 识有助于更容易更快速地找到表中的一个特定的记录。 · FOREIGN KEY - 保证一个表中的数据匹配另一个表中的值的参照完整性。 · CHECK - 保证列中的值符合指定的条件。对于MySQL数据库对CHECK子句进行分析      但是忽略 CHECK子句。 NULL约束 创建表时可以指定某列不为空 CREATE TABLE student (id INT NOT NULL,sn INT,name VARCHAR(20),qq_mail VARCHAR(20) ); UNIQUE唯一约束 指定sn列为唯一的、不重复的 CREATE TABLE student (id INT NOT NULL,sn INT UNIQUE,name VARCHAR(20),qq_mail VARCHAR(20) ); DEFAULT默认值约束 指定插入数据时name列为空默认值unkown CREATE TABLE student (id INT NOT NULL PRIMARY KEY,sn INT UNIQUE,name VARCHAR(20) DEFAULT unkown,qq_mail VARCHAR(20) ); PRIMARY KEY主键约束 指定id列为主键 CREATE TABLE student (id INT NOT NULL PRIMARY KEY,sn INT UNIQUE,name VARCHAR(20) DEFAULT unkown,qq_mail VARCHAR(20) ); 对于整数类型的主键常配搭自增长auto_increment来使用。插入数据对应字段不给值时使用最大值1。如下示例 id INT PRIMARY KEY auto_increment, FOREIGN KEY外键约束 外键用于关联其他表的主键或唯一键如下示例 foreign key (字段名) references 主表(列) 表的设计 一对一关系 一对多关系 多对多关系 查询  聚合查询 聚合函数 常见的统计总数、计算平局值等操作可以使用聚合函数来实现常见的聚合函数有 函数说明COUNT([DISTINCT] expr)返回查询到的数据的数量SUM([DISTINCT] expr)返回查询到的数据的总和不是数字没有意义AVG([DISTINCT] expr)返回查询到的数据的平均值不是数字没有意义MAX([DISTINCT] expr)返回查询到的数据的最大值不是数字没有意义MIN([DISTINCT] expr)返回查询到的数据的最小值不是数字没有意义 示例COUNT -- 统计班级共有多少同学 SELECT COUNT(*) FROM student;-- 统计班级收集的 qq_mail 有多少个qq_mail 为 NULL 的数据不会计入结果 SELECT COUNT(qq_mail) FROM student;SUM -- 统计数学成绩总分 SELECT SUM(math) FROM exam_result; -- 不及格 60 的总分没有结果返回 NULL SELECT SUM(math) FROM exam_result WHERE math 60;AVG -- 统计平均总分 SELECT AVG(chinese math english) 平均总分 FROM exam_result; MAX -- 返回英语最高分 SELECT MAX(english) FROM exam_result; MIN -- 返回 70 分以上的数学最低分 SELECT MIN(math) FROM exam_result WHERE math 70; GROUP BY子句 SELECT 中使用 GROUP BY 子句可以对指定列进行分组查询。需要满足使用 GROUP BY 进行分组查询时SELECT 指定的字段必须是“分组依据字段”其他字段若想出现在SELECT 中则必须包含在聚合函数中。 示例 create table emp(id int primary key auto_increment,name varchar(20) not null,role varchar(20) not null,salary numeric(11,2) ); insert into emp(name, role, salary) values (后羿,射手, 2000), (孙悟空,打野, 7000), (猪八戒,对抗路, 9000), (赵云,打野, 6000), (金蝉,辅助, 10000); 查询每个位置的最高经济、最低经济和平均经济 select role,max(salary),min(salary),avg(salary) from emp group by role; HAVING GROUP BY 子句进行分组以后需要对分组结果再进行条件过滤时不能使用 WHERE 语句而需要用 HAVING 显示平均经济低于6000的角色和它的平均经济 select role,max(salary),min(salary),avg(salary) from emp group by role having avg(salary)6000; 联合查询 实际开发中往往数据来自不同的表所以需要多表联合查询。多表查询是对多张表的数据取笛卡尔积 关联查询可以对关联表使用别名~~  insert into classes(name, desc) values (计算机系2019级1班, 学习了计算机原理、C和Java语言、数据结构和算法), (中文系2019级3班,学习了中国传统文学), (自动化2019级5班,学习了机械自动化); insert into student(sn, name, qq_mail, classes_id) values (09982,黑旋风李逵,xuanfengqq.com,1), (00835,菩提老祖,null,1), (00391,白素贞,null,1), (00031,许仙,xuxianqq.com,1), (51234,好好说话,sayqq.com,2), (83223,tellme,null,2), (09527,老外学中文,foreignerqq.com,2); insert into course(name) values (Java),(中国传统文化),(计算机原理),(语文),(高阶数学),(英文); insert into score(score, student_id, course_id) values -- 黑旋风李逵 (70.5, 1, 1),(98.5, 1, 3),(33, 1, 5),(98, 1, 6), -- 菩提老祖 (60, 2, 1),(59.5, 2, 5), -- 白素贞 (33, 3, 1),(68, 3, 3),(99, 3, 5), -- 许仙 (67, 4, 1),(23, 4, 3),(56, 4, 5),(72, 4, 6), -- 好好说话 (56, 6, 2),(43, 6, 4),(79, 6, 6), -- tellme (80, 7, 2),(92, 7, 6); 内连接 语法 select 字段 from 表1 别名1 [inner] join 表2 别名2 on 连接条件 and 其他条件; select 字段 from 表1 别名1,表2 别名2 where 连接条件 and 其他条件; 示例 ​​​​​​​1查询“许仙”同学的 成绩 select sco.score from student stu inner join score sco on stu.idsco.student_id and stu.name许仙; -- 或者 select sco.score from student stu, score sco where stu.idsco.student_id and stu.name许仙; 2查询所有同学的总成绩及同学的个人信息 -- 成绩表对学生表是多对1关系查询总成绩是根据成绩表的同学id来进行分组的 SELECTstu.sn,stu.NAME,stu.qq_mail,sum( sco.score ) FROMstudent stuJOIN score sco ON stu.id sco.student_id GROUP BYsco.student_id; 3查询所有同学的成绩及同学的个人信息 -- 查询出来的都是有成绩的同学“老外学中文”同学 没有显示 select * from student stu join score sco on stu.idsco.student_id; -- 学生表、成绩表、课程表3张表关联查询 SELECTstu.id,stu.sn,stu.NAME,stu.qq_mail,sco.score,sco.course_id,cou.NAME FROMstudent stuJOIN score sco ON stu.id sco.student_idJOIN course cou ON sco.course_id cou.id ORDER BY stu.id;外连接 外连接分为左外连接和右外连接。如果联合查询左侧的表完全显示我们就说是左外连接右侧的表完全显示我们就说是右外连接。 -- 左外连接表1完全显示 select 字段名 from 表名1 left join 表名2 on 连接条件; -- 右外连接表2完全显示 select 字段名 from 表名1 right join 表名2 on 连接条件;示例 查询所有同学的成绩及同学的个人信息如果该同学没有成绩也需要显示 -- “老外学中文”同学 没有考试成绩也显示出来了 select * from student stu left join score sco on stu.idsco.student_id; -- 对应的右外连接为 select * from score sco right join student stu on stu.idsco.student_id; -- 学生表、成绩表、课程表3张表关联查询 SELECTstu.id,stu.sn,stu.NAME,stu.qq_mail,sco.score,sco.course_id,cou.NAME FROMstudent stuLEFT JOIN score sco ON stu.id sco.student_idLEFT JOIN course cou ON sco.course_id cou.id ORDER BYstu.id; 子查询 子查询是指嵌入在其他sql语句中的select语句也叫嵌套查询 单行子查询 返回一行记录的子查询查询与“白素贞” 同学的同班同学 select * from student where classes_id(select classes_id from student where name白素贞);多行子查询 返回多行记录的子查询查询“语文”或“英文”课程的成绩信息 [NOT] IN关键字 -- 使用IN select * from score where course_id in (select id from course where name语文 or name英文); -- 使用 NOT IN select * from score where course_id not in (select id from course where name!语文 and name!英文);[NOT] EXISTS关键字 -- 使用 EXISTS select * from score sco where exists (select sco.id from course cou where (name语文 or name英文) and cou.id sco.course_id); -- 使用 NOT EXISTS select * from score sco where not exists (select sco.id from course cou where (name!语文 and name!英文) and cou.id sco.course_id); 在from子句中使用子查询子查询语句出现在from子句中。这里要用到数据查询的技巧把一个 子查询当做一个临时表使用。 查询所有比“中文系2019级3班”平均分高的成绩信息 -- 获取“中文系2019级3班”的平均分将其看作临时表 SELECTavg( sco.score ) score FROMscore scoJOIN student stu ON sco.student_id stu.idJOIN classes cls ON stu.classes_id cls.id WHEREcls.NAME 中文系2019级3班;查询成绩表中比以上临时表平均分高的成绩、 SELECT* FROMscore sco,(SELECTavg( sco.score ) score FROMscore scoJOIN student stu ON sco.student_id stu.idJOIN classes cls ON stu.classes_id cls.idWHEREcls.NAME 中文系2019级3班) tmp WHEREsco.score tmp.score;合并查询 在实际应用中为了合并多个select的执行结果可以使用集合操作符 unionunion all。使用UNION 和UNION ALL时前后查询的结果集中字段需要一致。 union该操作符用于取得两个结果集的并集。当使用该操作符时会自动去掉结果集中的重复行。 示例查询id小于3或者名字为“英文”的课程 select * from course where id3 union select * from course where name英文; -- 或者使用or来实现 select * from course where id3 or name英文; union all该操作符用于取得两个结果集的并集。当使用该操作符时不会去掉结果集中的重复行。 示例查询id小于3或者名字为“Java”的课程 -- 可以看到结果集中出现重复数据Java select * from course where id3 union all select * from course where name英文; 本期内容就到这里啦~~希望对大家有帮助喜欢的话可以关注作者噢~
http://www.dnsts.com.cn/news/207059.html

相关文章:

  • 住房和城乡建设部网站 上海上海交通建设工程信息服务平台
  • 旅游网站开发的意义是什么凉山州住房和城乡建设局门户网站
  • 网站怎样关键词排名优化vue做网站好吗
  • 一个网站开发团队wordpress内页不收录
  • 国企怎么做网站html个人网站设计
  • 企业网站建设功能模块耀华建设管理有限公司网站
  • 87网站建设工作室门户网站与搜索引擎的区别
  • 做一个企业网站多少钱网络的营销方法有哪些
  • 做一个网站服务器传媒网站建设公司
  • 旗舰店的网站怎么做不备案的网站很慢
  • 专业网站网站设计北京市保障性住房建设投资中心官方网站
  • 江苏网站定制wordpress 分类 标签
  • 聊城宏远网站建设优化如果建网站
  • 南浔建设局网站山东信达建设工程有限公司网站
  • 域名注册哪个网站便宜百度seo技术优化
  • 为什么会有免费制作网站烟台网站建设方案优化
  • 做短连接的网站广东住房和建设局网站
  • 网站建设续费是什么费用广州建网站自助建站系统
  • 三星官网网站怎么快速推广网站
  • 网站抓取qq住房城乡建设网站官网入口
  • 化学网站定制vps网站建设
  • 英文美食网站怎么做投资公司怎么投资
  • 合肥做网站一般多少钱企业网站配色绿色配什么色合适
  • 教育网站 前置审批wordpress主题调用编辑器
  • 建公司网站流程app模板
  • 网站开发在线扬中信息发布
  • 镇江市住房城乡建设局网站益阳网络
  • 企业宣传网站管理咨询顾问
  • 云主机建设网站网站建设服务费
  • 一女被多男做的视频网站做二手回收哪个网站好