HQL在in后面加上一个数组变量
来源:互联网 发布:低频反射扬声器 知乎 编辑:程序博客网 时间:2024/06/18 04:05
平时经常用Hibernate,由于习惯表间不建立关联,所以HQL查询时候经常要用in语句。
我最常用的情况有2种:
1、in后是个子查询,如 FROM A WHERE A.ID IN (SELECT B.AID FROM B WHERE ...),这样是没问题的,如果A.ID 和B.AID是相同的数据类型。
2、in的参数如果已知了,可以直接拼接在后面 如FROM A WHERE A.ID IN (1,2,3,4...)。
3、上面的情况下,通常(1,2,3,4...)都是作为参数传递过来的,可能是数组或者List。
假设List<Integer> a;a里面已经有数据了,则HQL查询条件可以为:
- String hql="FROM A WHERE A.ID IN (:alist)";
- Query query = getSession().createQuery(hql);
- query.setParameterList("alist", a);
- String hql="FROM A WHERE A.ID IN (:alist)";
- Query query = getSession().createQuery(hql);
- query.setParameterList("alist", a);
另外,query.setParameterList中的第二个参数,还可以是数组类型,如int[] a,不要被方法名称迷惑。我也是最近刚学会的这种in参数设置。
0 0
- HQL在in后面加上一个数组变量
- 杭电2019 int a[100100];数组大的定义在main()外面,记得后面加上“;”
- JS 在指定控件后面 加上相应的文字
- 关于一个STM32编译报错问题,变量声明不能在语句后面
- 函数后面 加上const
- hql语句,封装后的hql语句在分开查询or语句要加上括号
- js javascript 判断一个变量是否在一个数组中
- hql语句传递一个数组进行查询
- 在数组后面添加指定元素
- 课堂提问(C语言):输入10个整数到一个数组,将奇数放在数组前面,偶数放在数组后面,然后输出整个数组。
- 函数声明后面 加上 throw()
- ext在textfield 后面添加一个button
- 给定一个数字表示为数字数组,加上一个数字。
- 【图说Word】怎么在word的每一行前面和后面加上同一个字或字符?
- Java 里使用 long 类型的数据一定要在数值后面加上 “L”
- linux shell怎么开启多个进程 在所在的命令或者脚本后面加上&
- js正则在电话号码的第三位和第七位后面加上-
- 在文本最后一列的后面加上递增的数字-Linux
- 如何处理ORA-00376错误的恢复问题
- centos 5.xx 初次启动mysql
- C语言实现dijkstra(adjacence matrix)
- LA3135
- JXL(JExcleApi)Excle详细使用心得 Java导出Excel
- HQL在in后面加上一个数组变量
- 第十四周 项目五--体会棋盘游戏中的数据存储
- Linux 内核阅读工具vim+ctags+cscope+taglist
- android 输入框 XML 设置于代码设置异同
- [DP]Longest Common Subsequence
- 51单片机 带修改错误功能的计算器
- 小白书训练-Excuses, Excuses!m
- hdu1099
- 折腾二维数组(一)