国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Mybatis應用mysql存儲過程查詢數據實例

Mybatis應用mysql存儲過程查詢數據實例

2021-03-13 14:20Pionner17 Java教程

下面小編就為大家分享一篇Mybatis應用mysql存儲過程查詢數據實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

1.創建mysql存儲過程,這是個復雜查詢加上了判斷,比較復雜

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
CREATE PROCEDURE searchAllList (
    IN tradingAreaId VARCHAR (50),
    IN categoryName VARCHAR (100),
    IN intelligenceSort TINYINT UNSIGNED,
    IN priceBegin DOUBLE,
    IN priceEnd DOUBLE,
    IN commodityName VARCHAR (200),
    IN flag TINYINT UNSIGNED
)
BEGIN
IF flag = 0 THEN
    SELECT
        B.user_business_id businessId,
        B.shop_name,
        B.total_score,
        B.shop_logo,
        B.average_consume,
        D.category_name,
        B.shop_address
    FROM
        user_business_commodity A
    LEFT JOIN user_business B ON B.user_business_id = A.user_business_id
    LEFT JOIN user_business_category C ON C.business_id = B.user_business_id
    LEFT JOIN service_category D ON D.category_id = C.category_one_id
    WHERE
        1 = 1
    AND
    IF (
        categoryName IS NOT NULL
        AND LENGTH(TRIM(categoryName)) > 0,
        D.category_name = categoryName,
        1 = 1
    )
    AND
    IF (
        priceBegin != 0,
        B.average_consume >= priceBegin,
        1 = 1
    )
    AND
    IF (
        priceEnd != 0,
        B.average_consume <= priceEnd,
        1 = 1
    )
    AND
    IF (
        commodityName IS NOT NULL
        AND LENGTH(TRIM(commodityName)) > 0,
        A. NAME LIKE concat('%', commodityName, '%'),
        1 = 1
    )
    AND B.is_delete = 0
    AND B.shop_setup_state = 1
    AND A.is_delete = 0
    AND C.is_delete = 0
    AND D.is_delete = 0
    GROUP BY
        A.user_business_id
    ORDER BY
        CASE intelligenceSort
    WHEN 1 THEN
        'B.total_order DESC'
    WHEN 2 THEN
        'B.total_score DESC'
    WHEN 3 THEN
        'B.create_time DESC'
    ELSE
        'B.create_time ASC'
    END;
 
ELSE
    SELECT
        B.user_business_id businessId,
        B.shop_name,
        B.total_score,
        B.shop_logo,
        B.average_consume,
        D.category_name,
        B.shop_address
    FROM
        user_business_commodity A
    LEFT JOIN user_business B ON B.user_business_id = A.user_business_id
    LEFT JOIN user_business_category C ON C.business_id = B.user_business_id
    LEFT JOIN service_category D ON D.category_id = C.category_two_id
    WHERE
        1 = 1
    AND
    IF (
        categoryName IS NOT NULL
        AND LENGTH(TRIM(categoryName)) > 0,
        D.category_name = categoryName,
        1 = 1
    )
    AND
    IF (
        priceBegin != 0,
        B.average_consume >= priceBegin,
        1 = 1
    )
    AND
    IF (
        priceEnd != 0,
        B.average_consume <= priceEnd,
        1 = 1
    )
    AND
    IF (
        commodityName IS NOT NULL
        AND LENGTH(TRIM(commodityName)) > 0,
        A. NAME LIKE concat('%', commodityName, '%'),
        1 = 1
    )
    AND B.is_delete = 0
    AND B.shop_setup_state = 1
    AND A.is_delete = 0
    AND C.is_delete = 0
    AND D.is_delete = 0
    GROUP BY
        A.user_business_id
    ORDER BY
        CASE intelligenceSort
    WHEN 1 THEN
        'B.total_order DESC'
    WHEN 2 THEN
        'B.total_score DESC'
    WHEN 3 THEN
        'B.create_time DESC'
    ELSE
        'B.create_time ASC'
    END;
 
END IF;
END;

2.查看存儲過程是否創建成功:

?
1
show procedure status;

3.sqlMapper文件:

?
1
2
3
<select id="searchAllList1" parameterMap="searchAllListMap" statementType="CALLABLE" resultType="com.dongjia168.platform.vo.erp.crm.BusinessShopResp">
    CALL searchAllList(#{tradingAreaId},#{categoryName},#{intelligenceSort},#{priceBegin},#{priceEnd},#{commodityName},#{flag});
  </select>
?
1
2
3
4
5
6
7
8
9
<parameterMap id="searchAllListMap" type="com.dongjia168.platform.vo.erp.crm.BusinessShopReq">
    <parameter property="tradingAreaId" jdbcType="VARCHAR" mode="IN"/>
    <parameter property="categoryName" jdbcType="VARCHAR" mode="IN"/>
    <parameter property="intelligenceSort" jdbcType="INTEGER" mode="IN"/>
    <parameter property="priceBegin" jdbcType="DOUBLE" mode="IN"/>
    <parameter property="priceEnd" jdbcType="DOUBLE" mode="IN"/>
    <parameter property="commodityName" jdbcType="VARCHAR" mode="IN"/>
    <parameter property="flag" jdbcType="INTEGER" mode="IN"/>
  </parameterMap>

其他和直接調用sql語句一樣了

以上這篇Mybatis應用mysql存儲過程查詢數據實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持服務器之家。

原文鏈接:http://blog.csdn.net/mengyinjun217/article/details/78933548

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 成年人视频免费在线看 | 黄色一级电影在线观看 | 中文字幕在线观看1 | 国产精品久久久久久久久久久久久 | 日本一区二区三区中文字幕 | 亚洲天天在线观看 | 九九亚洲视频 | 成人黄色电影小说 | 亚洲一区在线免费观看 | 亚洲精品视频在线 | 精品福利一区二区三区免费视频 | 中文字幕精品一区二区三区精品 | 国产精品久久av | 四季久久免费一区二区三区四区 | 欧美成人精品一区二区三区 | 国产婷婷在线观看 | 久久中文精品 | 精品国产一级 | 国产精品视频免费看 | 欧美激情一区二区三区 | 欧美成年黄网站色视频 | 视频在线一区 | 日韩免费在线 | 欧美大片免费观看 | 懂色av一区二区三区免费观看 | 免费a视频 | 国产精品一区一区三区 | 亚洲伊人久久综合 | 精品久久久久国产 | 国产伦精品一区二区三区四区视频 | 免费观看在线午夜影视 | www.亚洲| 91看视频| 精品一区二区视频 | 一色视频 | 亚洲人成在线播放 | 粉色在线观看 | 国产精品99久久久久久动医院 | 欧美成人精品一区二区三区 | 亚洲成人精品在线观看 | 国产成人精品一区二区 |