數據中臺從Magnet開始(3)之動態SQL

Magnet使用SQL工作流時,可以使用動態方式生成SQL,還可以通過參數來改變SQL語句。

1、判斷標籤if

<sql id="step1" alias="alias1">
            <if test="1 == test">
                SELECT * FROM employees WHERE gender = 'F' AND birth_date > '1960-01-01'
            </if>
            <if test="2 == test">
                SELECT * FROM employees WHERE gender = 'M' AND birth_date > '${age}'
            </if>
</sql>

職責:主要功能是判斷參數是否滿足條件,若滿足條件則執行標籤內的內容

子標籤:可嵌套if、where、choose等標籤

2、where條件標籤

<sql id="step1" alias="alias1">
            <if test="3 == test">
                SELECT * FROM employees
                <where>
                    <if test="1 == wheretest">
                        gender = 'F'
                    </if>
                    <if test="2 == wheretest">
                        AND birth_date > '1960-01-01'
                    </if>
                </where>
            </if>
</sql>

職責:主要功能是給SQL語句添加where條件,零個或多個條件判斷的時候,可以自動的去掉第一個條件前多餘的AND或OR

子標籤:可嵌套if、where、choose等標籤

3、多項選擇的choose標籤

<sql id="step1" alias="alias1">
                        <if test="4 == test">
                <choose>
                    <when test="1 == choosetest">
                        SELECT * FROM employees WHERE gender = 'F'
                    </when>
                    <when test="2 == choosetest">
                        SELECT * FROM employees WHERE gender = 'M'
                    </when>
                    <otherwise>
                        SELECT * FROM employees WHERE birth_date > '1960-01-01'
                    </otherwise>
                </choose>
            </if>
        </sql>

職責:主要功能提供根據條件多項判斷的結構,根據參數的不同選擇不同的內容。

子標籤:可嵌套if、where、choose等標籤

碼雲:https://gitee.com/huanStephen/magnet

技術交流QQ羣:1051174317


相關內容:

數據中臺從Magnet開始(2)之快速入門

數據中臺從Magnet開始(1)之數據處理

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章