SQL语句编写

1、条件查询

 <select id="queryPageList" resultType="com.netintech.api.kuap.uap.domain.ext.UapApplicationAuditList">
        SELECT ad.*,
               app.app_name AS appName,
               p.apply_dept AS applyDept,
               app.app_type AS appType
        FROM uap_application_audit ad,
             uap_app_release r,
             uap_project_application app,
             uap_project p
                WHERE
                ad.app_release_id = r.id
                  AND r.app_pk = app.id
                  AND app.project_id = p.id

        <if test="auditResult != null">
            AND ad.audit_result = #{auditResult}
        </if>

        AND app.app_name LIKE concat('%', #{appName}, '%')
        AND p.apply_dept LIKE concat('%', #{applyDept}, '%')
    </select>
<select id="selectLogininforList" parameterType="SysLogininfor" resultMap="SysLogininforResult">
		select info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time from sys_logininfor
		<where>
			<if test="ipaddr != null and ipaddr != ''">
				AND ipaddr like concat('%', #{ipaddr}, '%')
			</if>
			<if test="status != null and status != ''">
				AND status = #{status}
			</if>
			<if test="userName != null and userName != ''">
				AND user_name like concat('%', #{userName}, '%')
			</if>
			<if test="beginTime != null and beginTime != ''"><!-- 开始时间检索 -->
				and date_format(login_time,'%y%m%d') &gt;= date_format(#{beginTime},'%y%m%d')
			</if>
			<if test="endTime != null and endTime != ''"><!-- 结束时间检索 -->
				and date_format(login_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
			</if>
		</where>
		order by info_id desc
	</select>

2、多表排序

<select id="deptApplicationRanking" resultType="com.netintech.vo.RankVo">
        SELECT d.total     AS count,
               d.dept_id   AS deptId,
               d.dept_name AS deptName
        FROM (
                     SELECT SUM(c.total) AS total,
                            c.dept_id,
                            c.dept_name
                     FROM (
                                  SELECT COUNT(1)              AS total,
                                         u.app_department      AS dept_id,
                                         u.app_department_name AS dept_name
                                  FROM uap_market_app u
                                  GROUP BY u.app_department,
                                           u.app_department_name
                                  UNION ALL
                                  SELECT COUNT(1)    AS total,
                                         p.dept_id   AS dept_id,
                                         p.dept_name AS dept_name
                                  FROM uap_project_application p
                                  GROUP BY p.dept_id,
                                           p.dept_name
                                  ) c
                     GROUP BY c.dept_id,
                              c.dept_name
                     ) d
        ORDER BY d.total DESC
        LIMIT 10;
    </select>

3、表内字段相加排序

 <select id="starAppListByShareApplication" resultType="com.netintech.vo.RankVo">
        SELECT r.appname AS deptName, r.appid AS deptId, m.`download` + m.`collection` + m.`to_view` AS COUNT
        FROM uap_supermarket_app m,
             (SELECT u.`id` AS appid, u.`app_name` AS appname
              FROM uap_shared_application u) r
        WHERE m.`app_id` = r.appid
        ORDER BY COUNT DESC
        limit 3
    </select>

4、批量删除

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值