GreenDao-自定义SQL查询-AndroidStudio
/**
* 功能:员工查询
* 方法参数:
* strEmpIdOrEmpName:员工ID 或者 员工名称
* strQueryType:员工查询类型 "0": "员工编号"; "1": "员工名称"
* strOrgId:当前所在组织
* strQualifType:资格条件
* strTicketType:票型
*/
public static List<EmployeeTableBean> getEmployeeInfo(String strEmpIdOrEmpName, String strEmployeeQueryType,
String strOrgId, String strQualifyType, String strTicketType) { List<EmployeeTableBean> lResutEmployeeTableBeanLt = new ArrayList<EmployeeTableBean>(); //拼接sql
String queryString = "SELECT DISTINCT * FROM " + EmployeeTableBeanDao.TABLENAME + " where 1==1 AND "+
EmployeeTableBeanDao.Properties.ORG_ID.columnName + " = ? AND " +
EmployeeTableBeanDao.Properties.QUALIF_TYPE.columnName + " = ? AND " +
EmployeeTableBeanDao.Properties.TICKET_TYPE.columnName + " = ? " ; //如果输入查询条件--员工编号
if (strEmployeeQueryType.equals(EmployeeQueryType.EMP_ID.getTypeId())) {
queryString = queryString + " and "
+ EmployeeTableBeanDao.Properties.EMP_ID.columnName + " like '%" + strEmpIdOrEmpName + "%' ";
//如果输入查询条件--员工名称
}else if (strEmployeeQueryType.equals(EmployeeQueryType.EMP_NAME.getTypeId())){
queryString = queryString + " and "
+ EmployeeTableBeanDao.Properties.EMP_NAME.columnName + " like '%" + strEmpIdOrEmpName + "%' ";
} queryString = queryString + " and "+
EmployeeTableBeanDao.Properties.EMP_ID.columnName + " IN ( SELECT " +
DigitalSignatureTableBeanDao.Properties.PERSON_ID.columnName + " FROM " +
DigitalSignatureTableBeanDao.TABLENAME + " ) "; String [] strsParam=new String[3];
strsParam[0] = strOrgId;
strsParam[1] = strQualifyType;
strsParam[2] = strTicketType; Cursor cursor = getDaoSession().getEmployeeTableBeanDao().getDatabase().rawQuery(queryString, strsParam); int intEMP_NAMEIndex = cursor.getColumnIndex(EmployeeTableBeanDao.Properties.EMP_NAME.columnName);
int intEMP_IDIndex = cursor.getColumnIndex(EmployeeTableBeanDao.Properties.EMP_ID.columnName);
int intQUALIF_TYPE_NAMEIndex = cursor.getColumnIndex(EmployeeTableBeanDao.Properties.QUALIF_TYPE_NAME.columnName);
int intTICKET_TYPE_NAMEIndex = cursor.getColumnIndex(EmployeeTableBeanDao.Properties.TICKET_TYPE_NAME.columnName); while (cursor.moveToNext()) {
EmployeeTableBean lEmployeeTableBean = new EmployeeTableBean();
lEmployeeTableBean.setEMP_NAME(cursor.getString(intEMP_NAMEIndex));
lEmployeeTableBean.setEMP_ID(cursor.getString(intEMP_IDIndex));
lEmployeeTableBean.setQUALIF_TYPE_NAME(cursor.getString(intQUALIF_TYPE_NAMEIndex));
lEmployeeTableBean.setTICKET_TYPE_NAME(cursor.getString(intTICKET_TYPE_NAMEIndex));
lResutEmployeeTableBeanLt.add(lEmployeeTableBean);
}
return lResutEmployeeTableBeanLt;
}
查询结果如下
GreenDao-自定义SQL查询-AndroidStudio的更多相关文章
- CI中自定义SQL查询,LIKE模糊查询的处理
参考: /** * 据用户输入的关键字查询相册信息;照片墙搜索框功能 * @param $keyWord 关键字 * @param $pageNum 页码,第几页 * @param $pageSize ...
- Activiti流程 关于自定义sql查询
由于才接触Activiti不久,对于表结构也不熟悉,甚至可以说连那些表对应的实体类都搞不清楚,又不能通过Activiti自带的链式查询实现:在这种情况下跟不知道怎么通过sql去实现自己想要的查询.上网 ...
- phpcmsv9自定义sql语句查询模型实现
在phpcmsv9中,自定义sql语句查询可不太好实现,传入sql语句查询很容易被内部转入生成一系列莫名其妙的sql语句,比如最佳前缀等等,直接造成sql语句查询错误,在此也提供两种解决办法,1修改底 ...
- vba 自定义菜单与vba通过sql查询
1.自定义菜单 首选需要开发“开发工具”菜单 文件--选项--自定义功能区--开发工具 勾选 .定义用户窗体或者宏 ) 定义用户窗体 Alt+F11进入Microsoft Visual Basic f ...
- spring boot 自定义sql分页查询
1.自定义sql查询分页 @Override public <T> Page<T> pageSQL(@Nonnull String sql, @Nonnull Pageable ...
- Thinkphp查询 1.查询方式 2.表达式查询 3.快捷查询 4.区间查询 5.组合查询 6.统计查询 7.动态查询 8.SQL 查询
1.使用字符串作为条件查询 $user = M('User'); var_dump($user->where('id=1 AND user="蜡笔小新"')->sele ...
- thinkjs中自定义sql语句
一直以为在使用thinkjs时,只能是它自带的sql语句查询,当遇到类似于这样的sql语句时,却不知道这该怎样来写程序,殊不知原来thinkjs可以执行自定义sql语句 SELECT * from a ...
- 15个初学者必看的基础SQL查询语句
本文由码农网 – 小峰原创翻译,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划! 本文将分享15个初学者必看的基础SQL查询语句,都很基础,但是你不一定都会,所以好好看看吧. 1.创建表和数据插 ...
- WordPress 常用数据库SQL查询语句大全
在使用WordPress的过程中,我们少不了要对数据库进行修改操作,比如,更换域名.修改附件目录.批量修改文章内容等等.这个时候,使用SQL查询语句可以大大简化我们的工作量. 关于如何操作SQL查询语 ...
随机推荐
- py库: jieba (中文词频统计) 、collections (字频统计)、WordCloud (词云)
先来个最简单的: # 查找列表中出现次数最多的值 ls = [1, 2, 3, 4, 5, 6, 1, 2, 1, 2, 1, 1] ls = ["呵呵", "呵呵&qu ...
- 《算法》第三章部分程序 part 1
▶ 书中第三章部分程序,加上自己补充的代码,包括单词频率统计,(单链表)顺序查找表,二分查找表 ● 单词频率统计 package package01; import edu.princeton.cs. ...
- django 使用mysql 数据库
在 django 创建项目中 默认使用的是 splite3 数据库,不是mysql 数据库,要使用mysql ,要做一些配置: 在 settings.py 中修改如下: DATABASES = { ...
- RabbitMq (1)
1.传递模型 点对点模型(PTP) 发布-订阅模型 -------------------------------------------------------------------------- ...
- 线程池构造类 ThreadPoolExecutor 的 5 个参数
1.corePoolSize :核心线程数 2.maxPoolSize: 最大线程数 3.keepAliveTime :闲置线程存活时间 4.unit:参数keepAliveTime的时间单位,有7种 ...
- 排序NB三人组
排序NB三人组 快速排序,堆排序,归并排序 1.快速排序 方法其实很简单:分别从初始序列“6 1 2 7 9 3 4 5 10 8”两端开始“探测”.先从右往左找一个小于6的数,再从左往 ...
- TP框架(接口文档模板框架)
https://blog.csdn.net/s390124971/article/details/51995497
- HTML Tags
While some tags have a very specific purpose, such as image and video tags, most tags are used to de ...
- Mybatis高级应用-2
文章内容简介 1.回顾 2.Mybatis配置文件解析 3.Mybatis映射文件解析 ResultMap标签使用 自定义返回值处理(Map) 关联映射 主键映射 一.回顾 Mybatis是ORM(o ...
- ping ip多进程处理小程序
最近,环境维护需要经常需要判断某些服务器上的IP是否可达,由于服务器数量较多,逐一手工ping检查太过繁琐.写个小程序使用. 实现和说明 1.使用配置文件ip.txt实现可配置指定ip列表. 2.利用 ...