最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SQLite教程(六):表達(dá)式詳解

 更新時(shí)間:2015年05月04日 16:32:54   投稿:junjie  
這篇文章主要介紹了SQLite教程(六):表達(dá)式詳解,本文講解了常用表達(dá)式、條件表達(dá)式、轉(zhuǎn)換表達(dá)式等內(nèi)容,需要的朋友可以參考下

一、常用表達(dá)式:

    和大多數(shù)關(guān)系型數(shù)據(jù)庫一樣,SQLite能夠很好的支持SQL標(biāo)準(zhǔn)中提供的表達(dá)式,其函數(shù)也與SQL標(biāo)準(zhǔn)保持一致,如:

復(fù)制代碼 代碼如下:

    ||
    *    /    %
    +    -
    <<   >>   &    |
    <    <=   >    >=
    =    ==   !=   <>   IS   IS NOT   IN   LIKE
    AND  
    OR
    ~    NOT

    在上面的表達(dá)式中,唯一需要說明的是"||",該表達(dá)式主要用于兩個(gè)字符串之間的連接,其返回值為連接后的字符串,即便該操作符兩邊的操作數(shù)為非字符串類型,在執(zhí)行該表達(dá)式之前都需要被提前轉(zhuǎn)換為字符串類型,之后再進(jìn)行連接。

二、條件表達(dá)式:

    該表達(dá)式的語法規(guī)則如下:
 

復(fù)制代碼 代碼如下:

    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
 

    對(duì)于第一種情況,條件表達(dá)式x只需計(jì)算一次,然后分別和WHEN關(guān)鍵字后的條件逐一進(jìn)行比較,直到找到相等的條件,其比較規(guī)則等價(jià)于等號(hào)(=)表達(dá)式。如果找到匹配的條件,則返回其后THEN關(guān)鍵字所指向的值,如果沒有找到任何匹配,則返回ELSE關(guān)鍵字之后的值,如果不存在ELSE分支,則返回NULL。對(duì)于第二種情況,和第一種情況相比,唯一的差別就是表達(dá)式x可能被多次執(zhí)行,比如第一個(gè)WHEN條件不匹配,則繼續(xù)計(jì)算后面的WHEN條件,其它規(guī)則均與第一種完全相同。最后需要說明的是,以上兩種形式的CASE表達(dá)式均遵守短路原則,即第一個(gè)表達(dá)式的條件一旦匹配,其后所有的WHEN表達(dá)式均不會(huì)再被執(zhí)行或比較。

三、轉(zhuǎn)換表達(dá)式:

    該表達(dá)式的語法規(guī)則如下:
 

復(fù)制代碼 代碼如下:

    CAST(expr AS target_type)
 

    該表達(dá)式會(huì)將參數(shù)expr轉(zhuǎn)換為target_type類型,具體的轉(zhuǎn)換規(guī)則見如下列表:


目標(biāo)類型 轉(zhuǎn)換規(guī)則描述
TEXT 如果轉(zhuǎn)換INTEGER或REAL類型的值到TEXT類型直接轉(zhuǎn)換即可,就像C/C++接口函數(shù)sqlite3_snprintf所完成的工作。
REAL 如果轉(zhuǎn)換TEXT類型的值到REAL類型,在該文本的最前部,將可以轉(zhuǎn)換為實(shí)數(shù)的文本轉(zhuǎn)換為相應(yīng)的實(shí)數(shù),其余部分忽略。其中該文本值的前導(dǎo)零亦將被全部忽略。如果該文本值沒有任何字符可以轉(zhuǎn)換為實(shí)數(shù),CAST表達(dá)式的轉(zhuǎn)換結(jié)果為0.0。
INTEGER 如果轉(zhuǎn)換TEXT類型的值到INTEGER類型,在該文本的最前部,將可以轉(zhuǎn)換為整數(shù)的文本轉(zhuǎn)換為相應(yīng)的整數(shù),其余部分忽略。其中該文本值的前導(dǎo)零亦將被全部忽略。如果該文本值沒有任何字符可以轉(zhuǎn)換為整數(shù),CAST表達(dá)式的轉(zhuǎn)換結(jié)果為0。
如果轉(zhuǎn)換將一個(gè)實(shí)數(shù)值轉(zhuǎn)換為INTEGER類型,則直接截?cái)鄬?shí)數(shù)小數(shù)部分。如果實(shí)數(shù)過大,則返回最大的負(fù)整數(shù):-9223372036854775808。
NUMERIC   如果轉(zhuǎn)換文本值到NUMERIC類型,則先將該值強(qiáng)制轉(zhuǎn)換為REAL類型,只有在將REAL轉(zhuǎn)換為INTEGER不會(huì)導(dǎo)致數(shù)據(jù)信息丟失以及完全可逆的情況下,SQLite才會(huì)進(jìn)一步將其轉(zhuǎn)換為INTEGER類型。

    最后需要說明的是,如果expr為NULL,則轉(zhuǎn)換的結(jié)果也為NULL。

相關(guān)文章

  • Linux sqlite3 基本命令

    Linux sqlite3 基本命令

    sqlite3一款主要用于嵌入式的輕量級(jí)數(shù)據(jù)庫,本文旨在為熟悉sqlite3基本命令提供技術(shù)文檔
    2013-12-12
  • SQLite教程(八):命令行工具介紹

    SQLite教程(八):命令行工具介紹

    這篇文章主要介紹了SQLite教程(八):命令行工具介紹,本文羅列了所有內(nèi)置命令,并對(duì)命令作用做了說明,然后給出了常用示例,需要的朋友可以參考下
    2015-05-05
  • sqlite循環(huán)批量插入數(shù)據(jù)采用批處理文件實(shí)現(xiàn)

    sqlite循環(huán)批量插入數(shù)據(jù)采用批處理文件實(shí)現(xiàn)

    需要在sqlite數(shù)據(jù)庫中插入大量測試數(shù)據(jù),需要通過一個(gè)批處理文件來循環(huán)調(diào)用插入sqlite語句,感興趣的朋友可以參考下哈,希望可以幫助到你
    2013-04-04
  • SQLite 入門教程三 好多約束 Constraints

    SQLite 入門教程三 好多約束 Constraints

    在上一篇隨筆的結(jié)尾,我提到了約束, 但是在那里我把它翻譯成了限定符,不太準(zhǔn)確,這里先更正一下,應(yīng)該翻譯成約束更貼切一點(diǎn)。 那么什么是約束呢
    2013-12-12
  • SQLite教程(五):數(shù)據(jù)庫和事務(wù)

    SQLite教程(五):數(shù)據(jù)庫和事務(wù)

    這篇文章主要介紹了SQLite教程(五):數(shù)據(jù)庫和事務(wù),本文講解了Attach數(shù)據(jù)庫、Detach數(shù)據(jù)庫、事務(wù)等內(nèi)容,需要的朋友可以參考下
    2015-05-05
  • SQLite3 命令行操作指南

    SQLite3 命令行操作指南

    這篇文章主要為大家介紹了SQLite3 命令行操作的一些幫助,需要的朋友可以參考下
    2013-12-12
  • SQLite速度評(píng)測代碼

    SQLite速度評(píng)測代碼

    SQLite 作為一個(gè)輕量級(jí)嵌入式數(shù)據(jù)庫,還是非常好用的。雨痕極力推薦~~~~~~
    2008-09-09
  • SQLite3中的日期時(shí)間函數(shù)使用小結(jié)

    SQLite3中的日期時(shí)間函數(shù)使用小結(jié)

    這篇文章主要介紹了SQLite3中的日期時(shí)間函數(shù)使用小結(jié),同時(shí)介紹了一些SQLite數(shù)據(jù)庫的基本知識(shí),需要的朋友可以參考下
    2014-05-05
  • 初識(shí)SQLITE3數(shù)據(jù)庫

    初識(shí)SQLITE3數(shù)據(jù)庫

    本文主要講訴Sqlite數(shù)據(jù)庫的一些基本概念以及SQLite的優(yōu)勢,需要的朋友可以參考下
    2014-08-08
  • SQLite學(xué)習(xí)手冊(cè)(SQLite在線備份)

    SQLite學(xué)習(xí)手冊(cè)(SQLite在線備份)

    在SQLite中提供了一組用于在線數(shù)據(jù)庫備份的APIs函數(shù)(C接口),可以很好的解決上述方法存在的不足。通過該組函數(shù),可以將源數(shù)據(jù)庫中的內(nèi)容拷貝到另一個(gè)數(shù)據(jù)庫,同時(shí)覆蓋目標(biāo)數(shù)據(jù)庫中的數(shù)據(jù)
    2013-12-12

最新評(píng)論

潍坊市| 烟台市| 新巴尔虎左旗| 黄梅县| 汉源县| 门源| 嘉善县| 桃园县| 康乐县| 阿坝县| 泰安市| 英超| 绿春县| 盱眙县| 体育| 湄潭县| 阳曲县| 泉州市| 曲水县| 门源| 青浦区| 都江堰市| 临湘市| 和政县| 黎城县| 安图县| 郁南县| 中江县| 桂平市| 九寨沟县| 文化| 临海市| 珠海市| 垫江县| 石棉县| 平乐县| 万源市| 清新县| 曲周县| 云南省| 商洛市|