search
HomeDatabaseMysql TutorialMySQL中对查询的结果集取交集如何实现_MySQL

bitsCN.com


MySQL中对查询的结果集取交集如何实现

 

需求:通过入学批次、层次、课程名称、专业和统考科目 为教学课程与统考科目设定对应关系,可通过选多个专业对教学课程与统考课程进行对应。

     

问题:级联---入学批次影响层次,入学批次与层次影响专业、入学批次层次与专业影响课程名称。当选了多个专业时,课程名称下拉框如何显示多个专业共有的课程(如果不能保证课程共有,可能会添加一些专业没有的课程对应关系)呢。

 

解决方案:

为了从略,这里只写出入学批次层次与专业影响课程名称的级联,也就是通过入学批次层次与专业来查询课程名称,传值都用ID,查询参数设置省略了。

 

方案一、临时表:

String queryBasic= “select model from ” ;

StringBuilder queryString=new StringBuilder();

queryString.append(queryBasic);

For(int i=0;i

       queryString.append(“(select model from TeachingPlan_CourseDetail model where model.grade=:grade and model.educationLevel and model.specialId=:specialId)  a”);

       queryString.append(i+ “”);

       if(i

              queryString.append(“,”);

}

}

If(specialIds.length>1){

queryString.append(“ where a”);

queryString.append(1+ “”);

queryString.append(“. specialId”

if(i

                     queryString.append(“=”);

}

}

 

方案二、交集join

String queryBasic= “select model from ”;

StringBuilder queryString=new StringBuilder();

queryString.append(queryBasic);

For(int i=0;i

       queryString.append(“(select model from TeachingPlan_CourseDetail model where model.grade=:grade and model.educationLevel and model.specialId=:specialId) as a ”);

       queryString.append(i+ “”);

       if(i

              queryString.append(“cross”);

}

}

If(specialIds.length>1){

For(int i=0;i

              queryString.append(“a”+i);

              queryString.append(“.specialId”);

              if(i

                     queryString.append(“=”);

}

}

}

方案三、子查询与上面类似,略。

 

bitsCN.com

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
一分钟搞定PyCharm专业版激活一分钟搞定PyCharm专业版激活Feb 22, 2024 pm 05:27 PM

由于激活PyCharm专业版需要购买许可证,因此激活过程并非只需一分钟就能完成。激活PyCharm专业版的过程中,通常需要使用许可证密钥和激活码。如果您拥有合法的许可证密钥和激活码,可以通过以下步骤来激活PyCharm专业版:打开PyCharm软件,在菜单栏中选择"Help"(帮助)-"Register"(注册)。在弹出的对话框中选择"Licensese

Pi Node教学:什么是Pi节点?如何安装和设定Pi Node?Pi Node教学:什么是Pi节点?如何安装和设定Pi Node?Mar 05, 2025 pm 05:57 PM

PiNetwork节点详解及安装指南本文将详细介绍PiNetwork生态系统中的关键角色——Pi节点,并提供安装和配置的完整步骤。Pi节点在PiNetwork区块链测试网推出后,成为众多先锋积极参与测试的重要环节,为即将到来的主网发布做准备。如果您还不了解PiNetwork,请参考Pi币是什么?上市价格多少?Pi用途、挖矿及安全性分析。什么是PiNetwork?PiNetwork项目始于2019年,拥有其专属加密货币Pi币。该项目旨在创建一个人人可参与

地理信息科学专业学生应选择哪种电脑地理信息科学专业学生应选择哪种电脑Jan 13, 2024 am 08:00 AM

推荐适合地理信息科学专业学生用的电脑1.推荐2.地理信息科学专业学生需要处理大量的地理数据和进行复杂的地理信息分析,因此需要一台性能较强的电脑。一台配置高的电脑可以提供更快的处理速度和更大的存储空间,能够更好地满足专业需求。3.推荐选择一台配备高性能处理器和大容量内存的电脑,这样可以提高数据处理和分析的效率。此外,选择一台具备较大存储空间和高分辨率显示屏的电脑也能更好地展示地理数据和结果。另外,考虑到地理信息科学专业学生可能需要进行地理信息系统(GIS)软件的开发和编程,选择一台支持较好的图形处

酷睿 Ultra 9 搭配 RTX 4070 顶配 ROG 幻 Air 专业性能轻薄本首发开售酷睿 Ultra 9 搭配 RTX 4070 顶配 ROG 幻 Air 专业性能轻薄本首发开售Feb 28, 2024 pm 03:52 PM

最近,笔记本行业不断涌现高性能轻薄本,各大品牌之间展开新一轮竞争。对消费者而言,高性能轻薄本恰到好处地结合了性能与便携性,突显了用户对笔记本的极致需求。在这其中,以ROG幻Air为代表的专业性能轻薄本率先拉开帷幕。据悉,此次ROG带来幻16Air和幻14Air两款产品,分别采用了英特尔酷睿Ultra9185H处理器和AMDR98945HS处理器,同时也均使用了NVIDIAGeForceRTX独立显卡,无论是性能,还是便携性均交出了一份满意的答卷。具体配置如何呢?我们一起来看一看。当然,在介绍性能

AIRankings世界高校AI排行榜出炉AIRankings世界高校AI排行榜出炉Apr 09, 2023 pm 07:21 PM

又是一年高考季。记得当年小编高考的时候,还流行这么一句话。那就是,「本科看学校,读研看专业」。这话放之前可能确实没什么错。然而,随着近几年科技突飞猛进的发展,一些和前端科技挂钩的专业可能就要从本科开始起步了。要说当下最火的专业,莫过于人工智能了。恰好最近AIRankings发布了一份全球大学AI相关专业排行榜。让我们一起看看有哪些大学和机构榜上有名吧。AI世界排名:北清综合前三AIRankings排名综合过去十年的研究,以及通用人工智能、计算机视觉、机器人、机器学习、自然语言处理、认知推理、多智

哪所大学的人工智能专业最佳?答案揭晓,这篇文章剖析透彻哪所大学的人工智能专业最佳?答案揭晓,这篇文章剖析透彻Nov 01, 2023 pm 05:53 PM

我在一个问答平台上看到一个网友提出了一个问题:哪所中国大学的人工智能专业比较好?这9所大学的人工智能专业被评为A+随着科学技术的发展进步,人工智能已经与我们的工作、生活密不可分了。健康运动手环、购买东西扫二维码、人脸识别、语音识别、语音助手、指纹识别等等,都属于人工智能的范畴,更不用说智能机器人了。人工智能的发展前景非常好,如果说重工业是夕阳产业的话,人工智能就是朝阳产业,属于高新技术产业随着社会生产力的不断发展,大数据、云计算、物联网等相关技术将会越来越广泛地应用于我们的日常生活,智能化发展已

推荐舞蹈专业适用的笔记本电脑推荐舞蹈专业适用的笔记本电脑Jan 16, 2024 pm 10:42 PM

舞蹈专业笔记本电脑推荐1.推荐2.因为舞蹈专业需要频繁使用电脑进行编舞、排练和演出等工作,所以需要一台性能较好的笔记本电脑。舞蹈软件和视频编辑软件通常需要较高的处理能力和存储空间,因此选择一台配置较高的笔记本电脑可以更好地满足舞蹈专业的需求。3.在选择舞蹈专业笔记本电脑时,可以考虑以下几个方面:-处理器:选择性能较强的处理器,如IntelCorei7或AMDRyzen7,以确保能够流畅运行舞蹈软件和视频编辑软件。-内存:建议选择至少16GB的内存,以便同时运行多个舞蹈软件和视频编辑软件,并保证系

教你学会win10怎么远程控制别人电脑教你学会win10怎么远程控制别人电脑Jul 14, 2023 am 09:09 AM

在我们使用win10系统的过程中,有些操作我们不懂需要通过让别人远程控制我们的电脑来帮助我们解决。最近就有用户想要了解win10怎么远程控制别人电脑,那么今天小编就来教教大家win10远程控制别人电脑怎么操作。下面就让我们一起来看看吧!win10远程控制别人电脑的操作方法:1、按下win键+i键点击打开系统。2、点击左侧的远程桌面,随后启用远程桌面即可。3、点击确认。4、点击高级设置,进行安全设置以及添加账户,然后就可以开启电脑远程控制啦!以上就是关于win10怎么远程控制别人电脑的方法啦!希望

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Tools

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment