日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

sql空字符串判断函数_Excel数据还可这样来查询:用SQL查询输出工作表指定区域更高效!...

發(fā)布時間:2025/3/15 数据库 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sql空字符串判断函数_Excel数据还可这样来查询:用SQL查询输出工作表指定区域更高效!... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

對于數(shù)據(jù)庫編程的朋友而言,SQL結(jié)構(gòu)化查詢技術(shù)并不陌生,也非常好用,憑借SQL強大的功能可以有效實現(xiàn)對數(shù)據(jù)庫的數(shù)據(jù)表數(shù)據(jù)的“增、刪、改、查”操作。一般而言,比較高級的語言環(huán)境,例如Java、C#、ASP.NET、PHP、Python等都經(jīng)常用到SQL方式訪問數(shù)據(jù)庫數(shù)據(jù),而我們Office高級辦公中Excel數(shù)據(jù)查詢等辦公操作較少用到過SQL方式,這主要是因為要使用SQL,還必須知道它的使用步驟,所以很多時候我們都是盡量運用Excel自身的查詢函數(shù)進行或者至多就是進入VBA后臺用簡單的IF判斷配合循環(huán)結(jié)構(gòu)去完成數(shù)據(jù)查詢。

數(shù)據(jù)量少的時候,用上面的IF判斷配合循環(huán)結(jié)構(gòu)去完成數(shù)據(jù)查詢方便,也感覺不出來時間的耗費問題。當(dāng)數(shù)據(jù)量很大時,可以明顯感覺出時間的耗費問題,同時程序的判斷語句也比較復(fù)雜。今天我們就要用簡單的SQL技術(shù)在VBA環(huán)境中取代冗長的IF判斷配合循環(huán)的方式,同時也大大提高了查詢效率。不僅如此,還可將用它的查詢結(jié)果輸出到指定的地方:Excel內(nèi)部的工作表區(qū)域或者列表控件。今天我們就先分享一下用SQL技術(shù)如何將查詢結(jié)果輸出到Excel內(nèi)部的工作表區(qū)域吧!

使用SQL技術(shù)前,我們必須知道其步驟過程使用規(guī)范:1-創(chuàng)建數(shù)據(jù)訪問的ADODB.Connection連接對象實例和ADODB.RecordSet數(shù)據(jù)記錄集合對象實例;2-帶條件的SQL字符串語句的的編輯; 3-數(shù)據(jù)連接對象實例的打開(例如:cnn.Open "Provider=Microsoft.ACE.OLEDB.15.0;Extended Properties=Excel 12.0;Data Source=" & DS_Path,其中:cnn-連接對象,DS_Path-數(shù)據(jù)源的完整路徑);4-結(jié)構(gòu)化查詢語句執(zhí)行(方式一:cnn.Excute (sql_str);方式二:rst.Open cnn, sql_str,A,B 其中:cnn是連接對象,sql_str是帶條件的SQL字符串語句,A是數(shù)據(jù)記錄游標(biāo)模式,B是數(shù)據(jù)訪問方式);5-將結(jié)構(gòu)化查詢的結(jié)果輸出;6-關(guān)閉數(shù)據(jù)記錄集合對象實例并置空、關(guān)閉數(shù)據(jù)連接對象實例并置空。

對于我們Office辦公工作的朋友們而言,也許上面的ADODB不是很清楚是什么意思,我們有必要在這里普及下其知識,它的英文全稱是“Active Data Objects DataBase”中文意思即是“活動數(shù)據(jù)對象數(shù)據(jù)庫”。好了,現(xiàn)在我們就來以模糊查詢方式如何實現(xiàn)SQL輸出到Excel工作表的數(shù)據(jù)區(qū)域?

一、SQL數(shù)據(jù)操作之一“查詢”操作的語句字符串書寫規(guī)范

(一)語法格式:

"Select 字段名列表 From 訪問的數(shù)據(jù)表 Where 條件列表 [Order by…] "

(二)幾點說明:

1-“字段名列表”規(guī)范形如“字段名1[,字段名2[,字段名3…]]…等,若是所有字段則直接用*號

2-訪問的數(shù)據(jù)表可以是數(shù)據(jù)庫表或者指定的Excel的數(shù)據(jù)區(qū)域,例如Excel類型的數(shù)據(jù)源表的格式應(yīng)該是中括號括起來(其他類型的數(shù)據(jù)庫表不需要中括號括起來)的形如[Sheet1$A1:D21]樣式,這里的$是Excel ODBC驅(qū)動程序識別Excel文件的工作表Sheet時追加的字符

3-條件列表是形如“Where 年齡>17 And 姓名=’張三’ Or 姓名 Like ‘%王%’”等形式,其中的“姓名 Like ‘%王%’”就是一種模糊查詢條件(尋找含姓名中含有“王”的人,%是通配符)

4- Order by…是按照各種方式查詢檢索,可選可省寫

二、準(zhǔn)備一個待查詢的Excel數(shù)據(jù)區(qū)域

我們輸入下面一片簡單的數(shù)據(jù)以備作查詢使用,并添加一個查詢交互按鈕,再增設(shè)一個數(shù)據(jù)驗證輸入的單元格作為姓名查詢的關(guān)鍵字輸入或選擇。如下圖所示

圖1 準(zhǔn)備的Excel工作表Sheet1查詢數(shù)據(jù)

三、體驗通過SQL進行的模糊查詢和精確查詢的結(jié)果輸出到Excel工作表給定的區(qū)域的情況

(一)在姓名查詢關(guān)鍵字輸入單元格中輸入模糊的關(guān)鍵字。如下圖所示

圖2 模糊查詢關(guān)鍵字輸入

(二)點擊按鈕,將在結(jié)果區(qū)域出現(xiàn)模糊查詢的結(jié)果數(shù)據(jù)。如下圖所示

圖3 Excel工作表給定的區(qū)域呈現(xiàn)的模糊查詢結(jié)果數(shù)據(jù)

(三)通過該關(guān)鍵字?jǐn)?shù)據(jù)驗證單元格選定一個精確的姓名。如下圖所示

圖4 精確查詢關(guān)鍵字的選定(非輸入)

(四)又再次點擊按鈕,將在結(jié)果區(qū)域出現(xiàn)出現(xiàn)精確查詢的結(jié)果數(shù)據(jù)。如下圖所示

圖5 Excel工作表給定的區(qū)域呈現(xiàn)的精確查詢結(jié)果數(shù)據(jù)

(五)在數(shù)據(jù)驗證單元格中如果未輸入關(guān)鍵字或未選定關(guān)鍵字,則將出現(xiàn)空關(guān)鍵字輸入的錯誤提示。如下圖所示

圖6 未輸入關(guān)鍵字或未選定關(guān)鍵字的情況

(六)在數(shù)據(jù)驗證單元格中如果輸入的關(guān)鍵字不存在,則將出現(xiàn)數(shù)據(jù)記錄未找到的的錯誤提示。如下圖所示

圖7 輸入不存在的關(guān)鍵字查詢的情況

看了上面的操作體驗,接下來我們來看一下在VBA后臺是如何實現(xiàn)的呢?下面,我們將呈現(xiàn)實現(xiàn)的功能代碼,代碼的每一句幾乎我們都用綠色注釋的非常清楚,便于大家學(xué)習(xí)交流。

四、通過SQL進行查詢Excel數(shù)據(jù)結(jié)果輸出到Excel工作表給定區(qū)域的功能代碼截圖

模塊1中功能代碼:

圖8 功能代碼截圖1

圖9 功能代碼截圖2

圖10 功能代碼截圖3

運用SQL進行查詢Excel數(shù)據(jù)結(jié)果輸出到Excel工作表給定區(qū)域的方法我們就給各位分享完畢了,在這里,我們分別用了模糊與精確查找兩種方式實現(xiàn)了SQL查詢Excel數(shù)據(jù)結(jié)果輸出到Excel工作表給定區(qū)域。這種查詢對于有大量Excel數(shù)據(jù)來講有非常的現(xiàn)實的查詢效率意義,大大地簡化了繁瑣的IF結(jié)構(gòu)判斷結(jié)合循環(huán)結(jié)構(gòu)的檢索,所有的條件都簡化到SQL的Where子句中去即可。希望今天的分享能夠為各位的數(shù)據(jù)查詢提供這種更簡潔的方法。

當(dāng)然,有朋友會問:能否將Excel數(shù)據(jù)用SQL查詢結(jié)果輸出到像其他軟件那樣放在窗體上的像表格那樣的控件中呈現(xiàn)呢?放心,我們會放在下一期作品中來解決這個問題,請大家平時留意關(guān)注!

最后,還是老話,非常感謝各位粉絲朋友對我的關(guān)注(頭條號:跟我學(xué)Office高級辦公)、推廣和點評,有了各位的支持,我會帶著各位的鼓勵一如既往地推出更多有實用意義的作品,謝謝!

總結(jié)

以上是生活随笔為你收集整理的sql空字符串判断函数_Excel数据还可这样来查询:用SQL查询输出工作表指定区域更高效!...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。