一、常用表達式:
和大多數關系型數據庫一樣,SQLite能夠很好的支持SQL標準中提供的表達式,其函數也與SQL標準保持一致,如:
二、條件表達式:
該表達式的語法規則如下:
三、轉換表達式:
該表達式的語法規則如下:
目標類型 | 轉換規則描述 |
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。
新聞熱點
疑難解答