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

A华企网络网站建设河北电子网站建设

A华企网络网站建设,河北电子网站建设,团队介绍网站建设,软件开发培训视频提示#xff1a;文章写完后#xff0c;目录可以自动生成#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、数据库约束1.1约束类型#xff1a;1.2 NULL约束1.3unique 唯一约束1.4 DEFAULT#xff1a;默认值约束1.5 PRIMARY KEY#xff1a;主键约束1.6 FOREIGN K… 提示文章写完后目录可以自动生成如何生成可参考右边的帮助文档 文章目录 前言一、数据库约束1.1约束类型1.2 NULL约束1.3unique 唯一约束1.4 DEFAULT默认值约束1.5 PRIMARY KEY主键约束1.6 FOREIGN KEY外键约束1.7 CHECK约束 二、新增三.查询3.1查询3.2.GROUP BY子句3.3HAVING 四、 联合查询4.1 内连接4.2外连接4.3区别4.4合并查询 总结 前言 提示这里可以添加本文要记录的大概内容 承接上文继续讲一下MySQL 提示以下是本篇文章正文内容下面案例可供参考 一、数据库约束 1.1约束类型 NOT NULL - 指示某列不能存储 NULL 值。 UNIQUE - 保证某列的每行必须有唯一的值。 DEFAULT - 规定没有给列赋值时的默认值。 PRIMARY KEY - NOT NULL 和 UNIQUE 的结合。确保某列或两个列多个列的结合有唯一标 识有助于更容易更快速地找到表中的一个特定的记录。 FOREIGN KEY - 保证一个表中的数据匹配另一个表中的值的参照完整性。 CHECK - 保证列中的值符合指定的条件。对于MySQL数据库对CHECK子句进行分析但是忽略CHECK子句。 1.2 NULL约束 DROP TABLE IF EXISTS student; CREATE TABLE student ( id INT NOT NULL, sn INT, name VARCHAR(20), qq_mail VARCHAR(20) ); 1.3unique 唯一约束 -- 重新设置学生表结构 DROP TABLE IF EXISTS student; CREATE TABLE student ( id INT NOT NULL, sn INT UNIQUE, name VARCHAR(20), qq_mail VARCHAR(20) );1.4 DEFAULT默认值约束 DROP TABLE IF EXISTS student; CREATE TABLE student ( id INT NOT NULL, sn INT UNIQUE, name VARCHAR(20) DEFAULT unkown, qq_mail VARCHAR(20) );1.5 PRIMARY KEY主键约束 DROP TABLE IF EXISTS student; CREATE TABLE student ( id INT NOT NULL PRIMARY KEY, sn INT UNIQUE, name VARCHAR(20) DEFAULT unkown, qq_mail VARCHAR(20) );可以用auto_increment -- 主键是 NOT NULL 和 UNIQUE 的结合可以不用 NOT NULL id INT PRIMARY KEY auto_increment,1.6 FOREIGN KEY外键约束 外键用于关联其他表的主键或唯一键 CREATE TABLE classes ( id INT PRIMARY KEY auto_increment, name VARCHAR(20), desc VARCHAR(100) );DROP TABLE IF EXISTS student; CREATE TABLE student ( id INT PRIMARY KEY auto_increment, sn INT UNIQUE, name VARCHAR(20) DEFAULT unkown, qq_mail VARCHAR(20), classes_id int, FOREIGN KEY (classes_id) REFERENCES classes(id) );1.7 CHECK约束 drop table if exists test_user; create table test_user ( id int, name varchar(20), sex varchar(1), check (sex 男 or sex女) );二、新增 DROP TABLE IF EXISTS student; CREATE TABLE student ( id INT PRIMARY KEY auto_increment, sn INT UNIQUE, name VARCHAR(20) DEFAULT unkown, qq_mail VARCHAR(20), classes_id int, FOREIGN KEY (classes_id) REFERENCES classes(id) )DROP TABLE IF EXISTS test_user; CREATE TABLE test_user ( id INT primary key auto_increment, name VARCHAR(20) comment 姓名, age INT comment 年龄, email VARCHAR(20) comment 邮箱, sex varchar(1) comment 性别, mobile varchar(20) comment 手机号 ); -- 将学生表中的所有数据复制到用户表 insert into test_user(name, email) select name, qq_mail from student;三.查询 3.1查询 写俩个 //数学成绩总分 SELECT SUM(math) FROM exam_result; -- 不及格 60 的总分没有结果返回 NULL SELECT SUM(math) FROM exam_result WHERE math 60;SELECT AVG(chinese math english) 平均总分 FROM exam_result;3.2.GROUP BY子句 代码如下示例 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 (马云,服务员, 1000.20), (马化腾,游戏陪玩, 2000.99), (孙悟空,游戏角色, 999.11), (猪无能,游戏角色, 333.5), (沙和尚,游戏角色, 700.33), (隔壁老王,董事长, 12000.66);查询每个角色的最高最低工资 select role,max(salary),min(salary),avg(salary) from emp group by role; select role,max(salary),min(salary),avg(salary) from emp group by role having avg(salary)1500; 解释一下依据角色选出最高最低工资并且工资都是小于1500. 3.3HAVING 上面那个例子就说明了having的用法。 但是注意GROUP BY 子句进行分组以后需要对分组结果再进行条件过滤时不能使用 WHERE 语句而需要用HAVING。 四、 联合查询 4.1 内连接 语法 select 字段 from 表1 别名1 [inner] join 表2 别名2 on 连接条件 and 其他条件; select 字段 from 表1 别名1,表2 别名2 where 连接条件 and 其他条件;SELECT stu.sn, stu.NAME, stu.qq_mail, sum( sco.score ) FROM student stu JOIN score sco ON stu.id sco.student_id GROUP BY sco.student_id;细细对比一下其实后面这个group by后面是什么不重要主要是因为前面用了聚合函数sum所以必须要加上group by或者解释说把grou by 相同的分类再同一个组中所以差距不大 4.2外连接 //左外连接 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_id4.3区别 内连接Inner Join 内连接只返回两个表中连接条件匹配的行。 如果连接条件中的数据在两个表中没有匹配项那么这些行将被忽略不包含在结果中。 右外连接Right Outer Join 右外连接返回连接条件匹配的行以及右表中不匹配的行。 如果连接条件中的数据在左表中没有匹配项左表的列将包含 NULL 值。 左外连接Left Outer Join 左外连接返回连接条件匹配的行以及左表中不匹配的行。 如果连接条件中的数据在右表中没有匹配项右表的列将包含 NULL 值。 4.4合并查询 以使用集合操作符 unionunion all。使用UNION 和UNION ALL时前后查询的结果集中字段需要一致 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英文;总结 好了这个是mysql的一些知识希望大家支持呀~~
http://www.dnsts.com.cn/news/266583.html

相关文章:

  • 惠州网站设计海南省海洋监测预报中心
  • 什么是品牌网站手机网站 禁止缩放
  • 签订网站建设协议应注意事项买域名建网站
  • 河南高端建设网站小程序开发定制开发
  • 甘肃网站建设公司网站提高收录和访问量
  • 重庆建网站搜索快忻科技网站建设seo需求文档
  • 建设部网站 43号文件建设部规范网站
  • 淄博做网站推广哪家好建设工程合同备案网站
  • 企业网站设计多少钱牛商网
  • 网站制作公司业务员网络优化的目的及意义
  • 官网做的好看的网站有哪些时尚手表网站
  • 住房和城乡建设网站 上海wordpress标签路径
  • 南软科技网站开发ipv6网站建设
  • 凡科建站官网2023上海又要封控了吗
  • 做爰在线网站网页游戏源码下载
  • 档案信息网站建设遵循什么原则最好的网站管理系统
  • 自个做网站教程做别人一样的网站模板
  • 做博客的网站有哪些软件下载网站如何建设
  • 公园网站建设方案 ppt台州市建设项目规划网站
  • 网站建设佰金手指科杰三十临沂网站建设搭建
  • 开发公司交房前财务交付风险seo主要做什么工作
  • 做360网站优化快速dw做企业网站
  • 成都专业网站建设套餐微网站管理
  • 建设网站和推广公司网站建设进度
  • 做网站前台用什么软件个人养老金制度将落地
  • 手机怎么浏览国外网站小程序开发费用一览表fhq华网天下
  • 手机网站设计尺寸大小如何在网站申请做co
  • 建立网站的成本网络公司经营范围可以加技术培训
  • 西安城乡住房建设厅网站莱芜做网站公司
  • 网站系统功能描述课程网站建设特色