java实现多表的自定义查询。

author author     2023-04-25     322

关键词:

现在有很多张表,在页面上显示所有表的属性,用户可以根据自己的需要选择想要的字段进行显示,并选择一些属性进行条件过滤。表与表之间有些存在关系,有些不存在关系。怎样在后台拼接sql语句,根据用户的选择从数据库拉选出用户自定义的数据。
现在你是不知道用户选了那些要显示的属性字段,哪些条件字段,所以在后台怎样进行表连接拼接sql语句是个头疼的问题。
大概是下图的样子:

select 前台用户选择的列(别名.XX1,别名.XX2,别名.XX3...)
from 前台用户选择要查询的表(T1) 别名 [,T2,T3]
[
连接关系(内连,左连)(inner join, left join) 表(T2) on
连接条件(表1别名.列名=表2别名.列名)
]
where 1=1 and [查询条件(表1别名.列名=xxx,...)]
[order by 表1别名.列名]

PS:方括号的内容为可选

补充回答:
怎么会不知道用户选了什么列呢?比如图中选了证书号,证书类型,签证机构,它选中肯定会对应一个值的,把这个值设成列名不就可以直接拼接了吗
参考技术A 你是要做一个通用的页面,不需要为每个表定制页面,用来显示表中的所有数据行是吧? 参考技术B 多表查询,只有有关系的才能一起吧。。。。。你可以贴出来看下撒。追问

现在你是不知道用户选了那些要显示的属性字段,哪些条件字段,所以在后台怎样进行表连接拼接sql语句是个头疼的问题。

django之多表查询与多表的使用(代码片段)

1.django的多表查询主要区分为:正向查询  逆向查询1.多表查询:是一个复杂的查询,他分为对象查询和__模糊查询两种方式2.多表查询:又分为一对一查询,一对多查询,多对多查询三种方式3.多表查询:分为正向查询与逆向查询,正... 查看详情

用于获取表的所有条目并且仅包含基于特定列的许多重复项中的第一个的自定义查询

】用于获取表的所有条目并且仅包含基于特定列的许多重复项中的第一个的自定义查询【英文标题】:Customquerytofetchallentriesofatableandthatonlycontainsfirstofmanyduplicatesbasedonaspecificcolumn【发布时间】:2022-01-0414:17:20【问题描述】:我有... 查看详情

mysql笛卡尔积详解(附实现多表查询代码实现)

前言:实际开发中往往数据来自不同的表,所以需要多表联合查询。多表查询是对多张表的数据取笛卡尔积:1.何为笛卡尔积?简单来说:就是简单的排列组合。把两张表的记录,放在一起进行排列组合的... 查看详情

多表的慢速 SQL 查询

】多表的慢速SQL查询【英文标题】:SlowSQLQuerywithmanytables【发布时间】:2021-10-1409:17:34【问题描述】:我是SQL问题中的新生,非常感谢您的帮助。我收到了一个查询(不是我写的),运行550000行需要将近15分钟,所以我想改进它... 查看详情

用于连接多对多表的 Linq 查询

】用于连接多对多表的Linq查询【英文标题】:Linqqueryforjoiningmanytomanytables【发布时间】:2021-04-0200:46:58【问题描述】:我是LINQ的新手,需要您的建议。我有2个这样的表:publicclassSubjectspublicSubjects()Classes=newList<Classes>();publicin... 查看详情

02-mysql多表查询

今日任务完成对MYSQL数据库的多表查询及建表的操作教学目标掌握MYSQL中多表的创建及多表的查询掌握MYSQL中的表关系分析并能正确建表昨天内容回顾:​数据库的创建:createdatabase数据库的名characterset字符集collate校对规则​数据库... 查看详情

多表连接查询

 一概述1背景理论上将全部数据放到同一张表中很难实现,实际上即使实现了,表也很庞大,很冗杂,不便于查询与维护,因此将不同的数据存放到不同的表中,需要时连接各表进行查询。2执行过程两张表进行连接查询时,... 查看详情

来自两个多对多表的MYSQL搜索查询优化

】来自两个多对多表的MYSQL搜索查询优化【英文标题】:MYSQLsearchqueryoptimizationfromtwomany-to-manytables【发布时间】:2021-03-0913:45:17【问题描述】:我有三张桌子。tbl_post用于帖子表。(post_idx,post_created,post_title,...)tbl_mention用于提及表... 查看详情

sql多表关联查询

...,太浪费时间了,有没有简单的方法?求告知~SQL多个表实现联合查询selectLineId,Id,CountryfromDomesticunionallselectLineId,Id,CountryfromFreedom--联合查询Domestic,Freedom表的LineId,Id,Countryall代表不去除反复--功能:[SQL语句]UNION[SQL语句]将两个语句... 查看详情

Datatables + PHP:多表的服务器端处理

】Datatables+PHP:多表的服务器端处理【英文标题】:Datatables+PHP:Server-SideProcessingonMultipleTables【发布时间】:2017-01-0403:09:51【问题描述】:如何让Datatables服务器端处理脚本与自定义查询一起工作?我需要从多个表中选择列并让Datat... 查看详情

@RepositoryRestResource 中的自定义实现

】@RepositoryRestResource中的自定义实现【英文标题】:Customimplementationin@RepositoryRestResource【发布时间】:2020-04-1220:47:11【问题描述】:我正在开发一个使用@RepositoryRestResource的spring-boot项目。有2个实体,Product和Domain,它们具有多对... 查看详情

java示例代码_实现无选项卡的自定义菜单

java示例代码_实现无选项卡的自定义菜单 查看详情

sqlmysql多表如何关联查询

...,但在实际开发中不应该这样使用,最好用主外键约束来实现二使用表的别名进行多表查询如:SELECTa.id,a.name,a.address,b.math,b.english,b.chineseFROMtb_demo065a,tb_demo065_telbWHEREa.id=b.idANDb.id='$_POST[textid]'SQL语言中,可以通过两种方式为表... 查看详情

sqlite怎样实现将查询的结果添加到表中实现表的自复制

...ble追问我有一个user表查询user表中的数据然后添加到user表实现user表的自复制追答什么意思……你是把user表中的数据复制到user表中?那表里面的主键不就重复了?追问我只是打个比方不考虑主键追答INSERT INTO first_table_name&... 查看详情

第七周java语法总结之数据库大全_ddl_dml_dql_约束_备份与还原_表的关系_三大范式_多表查询(内连接_外连接_子查询)_musql事务_隔离级别(代码片段)

文章目录数据库DDL语句:数据库定义语句1.库的增删查改1.查询当前mysql下所有的数据库2.创建数据库3.查看创建数据库的默认的字符集(了解)4.修改数据库的字符集(了解)5.删除库6.模糊查询mysql服务中所有的带character字符集的全局变... 查看详情

通用mapper

...Batis只需要定义Mapper接口,无需编写Mapper.xml文件  如果实现无需编写Mapper.xml文件,我们必须要实现动态拼接SQL如何实现动态拼接SQL语句?思路:编写Mybatis的插件,在执行过程中动态生成SQL语句2、简介:  Mybatis通用Mapper极... 查看详情

带有分页的 Spring JPA 存储库中的自定义查询

...:2015-10-2916:53:32【问题描述】:我已经尝试使用SpringBoot实现JPA存储库,它工作正常。现在,如果我尝试在使用@QueryAnnotation扩展JpaRepository的接口中实现自定义查询,它可以正常返回bean列表。(使用NamedQu 查看详情

多表查询

外键是作为与主表的主键相关联的键值,外键可以有多个,同时有外键的表称作对应主键所在表的从表,那主键所在的表就作主表。图中,tid是教师表中id的外键,也就学生表是教师表的从表,同理,教师表也就是院系表的从表... 查看详情