==================================== insert ==========================================
语句 <insert id="insertKjtStoreOrderInfo" parameterType="com.goldenvista.kjt.entity.mapping.KjtStoreOrderInfo">
insert into KJT_STORE_ORDER_INFO
(
ORDER_ID,
ORDER_SN,
BALANCE_PAY
)
values
(
#{orderId,jdbcType=DECIMAL},
#{orderSn,jdbcType=VARCHAR},
#{balancePay,jdbcType=DECIMAL}
)
</insert>
==================================== update ==========================================
语句 <update id="operModifyPassword" parameterType="java.util.Map">
update
kjt_store_opreator_info s
set
s.oper_password=#{newPassword}
where
s.oper_Id=#{operId}
</update>
==================================== select ========================================== 语句1 <select id="queryKjtStoreCount" parameterType="java.util.Map" resultType="java.lang.Long">
select
count(*)
FROM
KJT_STORE_INFO S
where
s.status = ''
<if test="storeNo !=null">
and S.STORE_NO = #{storeNo}
</if>
<if test="longitude != null and latitude !=null">
AND GetDistance(#{longitude},#{latitude},S.STORE_LONGITUDE,S.STORE_LATITUDE)*1000 between 0 and 5000
</if>
</select> # 自定义函数 计算经纬度距离
GetDistance(#{longitude},#{latitude},S.STORE_LONGITUDE,S.STORE_LATITUDE) create or replace
FUNCTION GetDistance(
lat1 number,
lng1 number,
lat2 number,
lng2 number)
RETURN NUMBER is
earth_padius number := 6378.137;
radLat1 number := rad(lat1);
radLat2 number := rad(lat2);
a number := radLat1 - radLat2;
b number := rad(lng1) - rad(lng2);
s number := 0;
begin
s := 2 *
Asin(Sqrt(power(sin(a / 2), 2) + cos(radLat1) * cos(radLat2) * power(sin(b / 2), 2)));
s := s * earth_padius;
s := Round(s * 10000) / 10000;
return s;
end; 语句2 <!-- 分页查询 -->
<select id="queryKjtStoreList" parameterType="java.util.Map" resultType="com.goldenvista.kjt.entity.message.KjtStoreInfoModel">
SELECT * FROM (
SELECT row_.*, rownum rownum_ FROM (
SELECT
S.STORE_ID AS storeId,
S.STORE_NAME AS storeName
FROM KJT_STORE_INFO S
WHERE s.status = ''
<if test="storeNo !=null">
and S.STORE_NO = #{storeNo}
</if>
<if test="longitude != null and latitude !=null">
AND GetDistance(#{longitude},#{latitude},S.STORE_LONGITUDE,S.STORE_LATITUDE)*1000 between 0 and 5000
</if>
<if test="longitude != null and latitude !=null">
ORDER BY GetDistance(#{longitude},#{latitude},S.STORE_LONGITUDE,S.STORE_LATITUDE)*1000 ASC
</if>
<if test="longitude == null and latitude ==null">
ORDER BY S.STORE_ID desc
</if>
<![CDATA[
) row_
WHERE rownum <=#{endRecord}
)
WHERE rownum_ >#{startRecord}
]]>
</select> 语句3 <!-- 查询推荐门店商品列表数目 -->
<select id="queryKjtStoreGoodsCount" parameterType="java.util.Map" resultType="java.lang.Long">
select count(*)
from KJT_STORE_GOODS_INFO g
where g.STORE_ID = #{storeId}
and (g.GOODS_NAME like '%' || #{keyword} || '%' or g.GOODS_SN like '%' || #{keyword} || '%')
</select> 模糊查询
g.GOODS_NAME like '%' || #{keyword} || '%' 语句4 <!-- 查询包含商品集合N的所有门店 -->
<select id="queryKjtStoreListByGoods" resultType="com.goldenvista.kjt.entity.message.KjtStoreInfoModel">
select
k.STORE_ID AS storeId,
k.STORE_NAME AS storeName
from
KJT_STORE_INFO k
where k.store_id in
(
SELECT S.STORE_ID
FROM KJT_STORE_INFO S, KJT_STORE_GOODS_INFO g
WHERE S.STORE_ID = g.STORE_ID
and S.status = ''
and g.goods_id in
<foreach item="item" index="index" collection="goodsIds" open="(" separator="," close=")">
#{item}
</foreach>
)
<if test="keyword != null">
and (k.STORE_NAME like '%' || #{keyword} || '%' or k.STORE_ADDRESS like '%' || #{keyword} || '%')
</if>
</select> 语句5 <select id="getStoreInfo" parameterType="java.util.Map" resultType="com.goldenvista.kjt.entity.message.StoreInfo">
SELECT
s.store_id as store_id,
s.oper_no as oper_Id,
o.store_name as storeNmae,
to_char(s.create_date,'yyyy-MM-dd HH24:mi:ss')
FROM
kjt_store_opreator_info s,kjt_store_info o
WHERE
s.store_id = o.store_id
and s.status='' and s.oper_no = #{name} and s.oper_password =#{password}
</select> TO_CHAR 是把日期或数字转换为字符串
TO_CHAR(number, '格式')
TO_CHAR(date,’格式’) 例如:
TO_CHAR(salary,’$99,999.99’)
TO_CHAR(newdate,’yyyy-mm-dd’) 指定字符串的长度可以使用lpad或者rpad或者substring: lpad(字段名,填充长度,填充的字符) 左填充
rpad(字段名,填充长度,填充的字符) 右填充
substr( string, start_position, [ length ] )取得字符串中指定起始位置和长度的字符串

[oracle] oracle-myibatis-整理的更多相关文章

  1. oracle常用函数整理

    oracle常用函数整理    1.绝对值.取余.判断数值正负函数    绝对值:ABS(n)        示例: SELECT ABS(100),ABS(-100),ABS('100') FROM ...

  2. install_driver(Oracle) failed: Can't load `.../DBD/Oracle/Oracle.so' for module DBD::Oracle

    Description This section is from the "Practical mod_perl " book, by Stas Bekman and Eric C ...

  3. 性能监控工具的配置及使用 - Spotlight On Oracle(oracle)

    一.    Spotlight On Oracle(oracle)1.1.   工具简介Spotlight是一个强有力的Oracle数据库实时性能诊断工具,提供了一个直观的.可视化的数据库活动展现.S ...

  4. 性能监控工具的配置及使用 - Spotlight On Oracle(oracle) 转:紫漪

    一.    Spotlight On Oracle(oracle) 1.1.   工具简介 Spotlight是一个强有力的Oracle数据库实时性能诊断工具,提供了一个直观的.可视化的数据库活动展现 ...

  5. ORACLE| ORACLE基础语法汇总

    创 ORACLE| ORACLE基础语法汇总 2018-07-18 16:47:34 YvesHe 阅读数 9141更多 分类专栏: [数据库]   版权声明:本文为博主原创文章,遵循CC 4.0 B ...

  6. Oracle学习笔记整理手册

    文章目录(1)Oracle正则匹配使用(2)Oracle修改有数据的数据字段类型(3)Oracle表数据回滚语句(4)sql筛选出记录数大于2的记录(5)oracle同义词(6)oracle内外连接( ...

  7. Oracle Hint用法整理笔记

    目录 1./+ result_cache / 2./+ connect_by_filtering / 3./+ no_unnset / 4./+ index(表别名 索引名) / 5./+ INDEX ...

  8. 工作中用到的oracle字符串分割整理

    oracle部分: 定义类型(用于字符串分割): create or replace TYPE "STR_SPLIT" IS TABLE OF VARCHAR2 (4000); 字 ...

  9. Oracle系统表整理+常用SQL语句收集

    欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...

  10. oracle分区表(整理)

    Oracle 表分区 早在8.0.5版本中,Oracle就将范围分区技术引入,现在分区功能已经越来越强大,包括支持扩展分区功能.Interval分区.外键分区.模拟列分区.以及分区建议器等.那么,分区 ...

随机推荐

  1. RHEL7 -- nmcli的使用

    查看网络设备的状态: # nmcli dev status DEVICE TYPE STATE ens32 --ethernet connected eth1 --ethernet disconnec ...

  2. RHEL7 -- 识别文件系统和设备

    逻辑卷依赖于设备映射程序(DM)内核驱动程序. 比如有个逻辑卷组rhel中有一个逻辑卷root,对应的设备为/dev/rhel/root.符号链接/dev/rhel/root指向/dev/dm-< ...

  3. 套接字I/O超时设置方法和用select实现超时

    注:如无特殊说明,sockfd 原始状态都是阻塞的. 一.使用alarm 函数设置超时  C++ Code  1 2 3 4 5 6 7 8 9 10 11 12 13   void handler( ...

  4. Unix环境高级编程(九)信号

    信号时软中断,很多比较重要的应用程序都需要处理信号,信号提供了一种处理异步事件的方法.每个信号都一个名字,以SIG开头,在<signal.h>头文件中定义信号类型,都是正整数(信号编号). ...

  5. 《TCP/IP具体解释卷2:实现》笔记--选路请求和选路消息

    内核的各种协议并不直接使用前面提供的函数来訪问选路树,而是调用几个函数:rtalloc和rtallocl是完毕路由表查询的两个 函数:rtrequest函数用于加入和删除路由表项:另外大多数接口在接口 ...

  6. 解决windows server2012 评估版本过期,系统会自动关机

    解决windows server2012 评估版本过期,系统在1小时后会自动关机. 重置方法:以管理员方式运行命令行,执行slmgr.vbs /rearm,可以使授权延长180天,但是仅能延长5次.

  7. java中代理,静态代理,动态代理以及spring aop代理方式,实现原理统一汇总

    若代理类在程序运行前就已经存在,那么这种代理方式被成为 静态代理 ,这种情况下的代理类通常都是我们在Java代码中定义的. 通常情况下, 静态代理中的代理类和委托类会实现同一接口或是派生自相同的父类. ...

  8. wxWidgets编程起步

    開始学习wxWidgets,上一篇写了"安装wxWidgets遭遇的两大关卡"(简称"前文"). 先推荐一下这两天找到的学习材料. 博客中有一个系列教程,貌似作 ...

  9. 在ModelSim中添加Xilinx仿真库

    在ModelSim中添加Xilinx仿真库 说明: l ModelSim一定要安装在不带空格的目录下,即不要安装在“Program Files”目录下.如作者是安装在D:\softwares\Mode ...

  10. Swift语言 简明基础 代码演示样例

    开发环境: Mac.Xcode6.0 下面内容均可创建ios common line项目来測试 1.Hello World演示样例 使用xcode创建新的common line项目,查看主文件main ...