<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # SQLite學習手冊(表達式) 一、常用表達式: 和大多數關系型數據庫一樣,SQLite能夠很好的支持SQL標準中提供的表達式,其函數也與SQL標準保持一致,如: ``` || *??? /??? % +??? - <<?? >>?? &??? | <??? <=?? >??? >= =??? ==?? !=?? <>?? IS?? IS NOT?? IN?? LIKE AND? ? OR ~??? NOT ``` 在上面的表達式中,唯一需要說明的是"||",該表達式主要用于兩個字符串之間的連接,其返回值為連接后的字符串,即便該操作符兩邊的操作數為非字符串類型,在執行該表達式之前都需要被提前轉換為字符串類型,之后再進行連接。 二、條件表達式: 該表達式的語法規則如下: ``` 1). CASE x WHEN w1 THEN r1 WHEN w2 THEN r2 ELSE r3 END 2). CASE WHEN x=w1 THEN r1 WHEN x=w2 THEN r2 ELSE r3 END ``` 對于第一種情況,條件表達式x只需計算一次,然后分別和WHEN關鍵字后的條件逐一進行比較,直到找到相等的條件,其比較規則等價于等號(=)表達式。如果找到匹配的條件,則返回其后THEN關鍵字所指向的值,如果沒有找到任何匹配,則返回ELSE關鍵字之后的值,如果不存在ELSE分支,則返回NULL。對于第二種情況,和第一種情況相比,唯一的差別就是表達式x可能被多次執行,比如第一個WHEN條件不匹配,則繼續計算后面的WHEN條件,其它規則均與第一種完全相同。最后需要說明的是,以上兩種形式的CASE表達式均遵守短路原則,即第一個表達式的條件一旦匹配,其后所有的WHEN表達式均不會再被執行或比較。 三、轉換表達式: 該表達式的語法規則如下: ``` CAST(expr AS target_type) ``` 該表達式會將參數expr轉換為target_type類型,具體的轉換規則見如下列表: | 目標類型 | 轉換規則描述 | | --- | --- | | TEXT | 如果轉換INTEGER或REAL類型的值到TEXT類型直接轉換即可,就像C/C++接口函數sqlite3_snprintf所完成的工作。 | | REAL | 如果轉換TEXT類型的值到REAL類型,在該文本的最前部,將可以轉換為實數的文本轉換為相應的實數,其余部分忽略。其中該文本值的前導零亦將被全部忽略。如果該文本值沒有任何字符可以轉換為實數,CAST表達式的轉換結果為0.0。 | | INTEGER | 如果轉換TEXT類型的值到INTEGER類型,在該文本的最前部,將可以轉換為整數的文本轉換為相應的整數,其余部分忽略。其中該文本值的前導零亦將被全部忽略。如果該文本值沒有任何字符可以轉換為整數,CAST表達式的轉換結果為0。如果轉換將一個實數值轉換為INTEGER類型,則直接截斷實數小數部分。如果實數過大,則返回最大的負整數:-9223372036854775808。 | | NUMERIC   | 如果轉換文本值到NUMERIC類型,則先將該值強制轉換為REAL類型,只有在將REAL轉換為INTEGER不會導致數據信息丟失以及完全可逆的情況下,SQLite才會進一步將其轉換為INTEGER類型。 | 最后需要說明的是,如果expr為NULL,則轉換的結果也為NULL。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看