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

公益网站建设分析wordpress外网连接

公益网站建设分析,wordpress外网连接,益田附近网站建设,高品质网站建设今天总结的关于exists的作用和用法#xff0c;借鉴了一些他人的想法#xff0c;并进行了一些补充#xff0c;希望对你们有所帮助 引言 exists可以算得上是mySQL的一个关键字#xff0c;在很多sql语句中经常可以用到#xff0c;为了更好地理解exists关键字的用法#xf…今天总结的关于exists的作用和用法借鉴了一些他人的想法并进行了一些补充希望对你们有所帮助 引言 exists可以算得上是mySQL的一个关键字在很多sql语句中经常可以用到为了更好地理解exists关键字的用法下面从一个简单的例子引入下面是一个sql语句例子 select * from student where not EXISTS (select 1 from course where not EXISTS(select 1 from scwhere SC.S_idstudent.S_id and SC.C_idcourse.C_id))前置知识 要想理解exists的作用你要知道什么是相关子查询和不相关子查询 数据准备 -- 课程信息 DROP TABLE IF EXISTS student; CREATE TABLE course (C_id int NOT NULL,C_name varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,PRIMARY KEY (C_id) USING BTREE ) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci ROW_FORMAT Dynamic; INSERT INTO course VALUES (1, 语文); INSERT INTO course VALUES (2, 英语); INSERT INTO course VALUES (3, 数学);-- 选修记录 DROP TABLE IF EXISTS sc; CREATE TABLE sc (S_id int NOT NULL,C_id int NULL DEFAULT NULL ) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci ROW_FORMAT Dynamic; INSERT INTO sc VALUES (1, 1); INSERT INTO sc VALUES (1, 2); INSERT INTO sc VALUES (1, 3); INSERT INTO sc VALUES (2, 2);-- 学生信息 DROP TABLE IF EXISTS student; CREATE TABLE student (S_id int NOT NULL,s_name varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,PRIMARY KEY (S_id) USING BTREE ) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci ROW_FORMAT Dynamic; INSERT INTO student VALUES (1, 张三); INSERT INTO student VALUES (2, 李四); INSERT INTO student VALUES (3, 王五);具体图如下 基本作用 EXISTS 用于在主查询中执行条件判断以确定是否存在符合子查询条件的行。它返回布尔值TRUE 或 FALSE表示子查询是否至少返回一行结果。 例如 SELECT s_id, s_name FROM student WHERE EXISTS (SELECT 1FROM scWHERE sc.s_id student.s_id );执行步骤是 从student表中取第一条数据带入到子查询中 判断在sc表中至少存在一条数据满足条件sc.s_id student.s_id 存在 返回student表中s_id和s_name字段 不存在例如 SELECT s_id, s_name FROM student WHERE EXISTS ( SELECT 1 FROM sc WHERE sc.s_id 4 );没有任何输出 所以上面sql语句输出结果为 所以上面sql语句的意思是 对于student表中的每一条数据来说遍历sc表满的数据足条件sc.s_id student.s_id的记录的s_ids_name 也就是说查找有选修记录的学生信息 exists嵌套 了解基本作用后就可以尝试了解最开始的问题 select * from student where not EXISTS (select 1 from course where not EXISTS(select 1 from scwhere SC.S_idstudent.S_id and SC.C_idcourse.C_id))可以直观看出上面有两层嵌套 这是第一层 select 1 from course where not exists (select 1 from course where ...)这是第二层 select 1 from sc where SC.S_idstudent.S_id and SC.C_idcourse.C_id)不要慌我们一步一步分析 从student表中取一条数据放到第一层exists嵌套中 然后判断是否不存在满足第一层嵌套exists的条件where not exists (select 1 from course where ...) 这是一个exists的嵌套语句同理再在course表中取一条数据然后和student表中的第一条数据放到第二层嵌套中 select 1 from sc where SC.S_idstudent.S_id and SC.C_idcourse.C_id)可以发现已经没有嵌套了来判断是否不存在一条数据满足上面条件 可以发现满足条件也就是exists即存在选修记录返回false 接着带入course表中第二条数据也存在返回false, 接着带入course表中第三条数据也存在返回false, 此时course表中没有其他数据也就是说不存在他没有选修过的课程返回true,输出第一条学生信息 同理从student表中取第二条数据放到第一层exists嵌套中判断是否满足 …………带入course表中第一条数据不存在选修记录返回true,此时course表存在他没有选修过的课程返回false,不输出 同理从student表中取第三条数据放到第一层exists嵌套中判断是否满足 …………带入course表中第一条数据也不存在他没选修过的课程返回true对于第一个not exists而言只有false才输出此时course表存在他没有选修过的课程返回false,不输出 对于student表中数据而言不存在选修记录中不存在的课程的学生信息 输出结果为 最后总结发现上面sql句子的意思是 所有课程都选修的学生 也就是说查找选修了所有课程的学生信息。 类似的还有以下内容 select student.s_id, student.s_name from student where EXISTS (select 1 from course where not EXISTS(select 1 from scwhere SC.S_idstudent.S_id and SC.C_idcourse.C_id))所有课程还没对应的学生 答案 select student.s_id, student.s_name from student where not EXISTS (select 1 from course where EXISTS(select 1 from scwhere SC.S_idstudent.S_id and SC.C_idcourse.C_id))课程都不对应的学生 答案3 select * from student where EXISTS (select 1 from course where EXISTS(select 1 from scwhere SC.S_idstudent.S_id and SC.C_idcourse.C_id))课程对应的学生 答案12 参考链接 https://zhuanlan.zhihu.com/p/20005249 https://cloud.tencent.com/developer/article/2146774
http://www.hkea.cn/news/14559994/

相关文章:

  • 台商网站建设公司黄页制作企业网站的秘诀
  • 网站建设维护外包网站负责人核验现场拍摄照片
  • 可信网站身份验证做影视网站不备案
  • 办公类网站开发背景php网站开发技术课程
  • 官方网站下载手电筒全国装饰公司最新排行榜
  • 运营网站团队建设建立企业网站的流程
  • 手机怎么做网站添加背景音乐湖南响应式网站设计
  • 河南专业网站建设公司首选建设化工网站的功能
  • 成都 php 网站深圳市手机网站建设企业
  • 惠州市惠城区建设局网站网站seo顾问
  • 英文网站建设公司 杭州wordpress 瀑布流加载
  • 访问网站出来的是目录wordpress收录差劲啊
  • 怎么找网站的后台地址微信服务商平台官网
  • 做网站与网页有什么区别wap网站建设是什么
  • 网站推广名片登录建设厅网站的是企业锁吗
  • 湘潭做网站选择磐石网络潍坊市建设局官方网站
  • 兰州市城乡建设局网站官网国外视频设计网站
  • 做哪个行业的网站好台州市城市建设投资公司网站
  • 深圳定制建设网站wordpress如何新建模板页面
  • 网站icp备案号查询手机网站 link和visited设置同一种颜色失效
  • psd网站营销网站建设苏州
  • 优化的网站做域名跳转系统优化
  • 手表网站那个好山东手机在线app
  • 怎么自己做微网站郴州有哪些县
  • 上海专业网站建设信息最近时政新闻
  • 一个虚拟主机如何做两个网站sae wordpress ftp
  • 石家庄网站推广太原网站建设360
  • 公司架设网站费用怎么做分录建设网站查询余额
  • 建立网站专业公司不用下载微信在线登录
  • 最大的做网站公司wordpress 邮件发送