小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

在VB6中用Select語(yǔ)句檢索記錄

 GTY_TSG 2021-05-13

VB6中用Select語(yǔ)句檢索記錄

VB數(shù)據(jù)庫(kù)程序設(shè)計(jì)中經(jīng)常要檢索記錄,常用的是把一條SELECT語(yǔ)句傳送給

Recordset對(duì)象的Open方法或Execute方法。下面就SELECT語(yǔ)句做一比較全面的闡述。

1.簡(jiǎn)單SELECT語(yǔ)句

SELECT * 的意思是:返回在所指定的記錄源中能找到的所有字段。這種命令形式很方便,

因?yàn)槟銦o(wú)需知道從表中檢索的字段名稱。然而,檢索表中的所有列是低效的。因此,因該只

檢索需要的字段,這樣可以大大的提高查詢的效率。 2.使用 From 子句指定記錄源

From 子句說(shuō)明的是查詢檢索記錄的記錄源;該記錄源可以是一個(gè)表或另一個(gè)存儲(chǔ)查詢。

例:Select * From students 檢索students表中的所有記錄

3. Where 子句說(shuō)明條件

Where 子句告訴數(shù)據(jù)庫(kù)引擎根據(jù)所提供的一個(gè)或多個(gè)條件限定其檢索的記錄。條件是一個(gè)表

達(dá)式,可具有真假兩種判斷。

例:Select * From USERS Where ID='123' (注:標(biāo)準(zhǔn)的SQL語(yǔ)句使用單引號(hào)作為字符的定

界符)

返回USERS表中ID字段為'123'的所有記錄。

使用 And Or 邏輯可以將兩個(gè)或更多的條件鏈接到一起以創(chuàng)建更高級(jí)的 Where 子句。

例:Select * From USERS Where ID = '123' And PWD <> ''

返回ID為“123PWD不為空的記錄。

SQL語(yǔ)句中的比較運(yùn)算符

操作符

功能

操作符

功能

>

大于

>=

大于或等于

<

小于

<=

小于或等于

=

等于

<>

不等于

Between

在某個(gè)取值范圍內(nèi)

Like

匹配某個(gè)模式

1/5頁(yè)

In

包含在某個(gè)值列表中

(1)Between 操作符

Select * From USERS Where ID Between 1 And 100

Between 操作符返回的是位于所說(shuō)明的界限之內(nèi)的所有記錄值。這個(gè)例子就返回ID字段從1

100之間的全部記錄。

(2)Like 操作符和通配符

Select * From USERS Where ID Like '%3%'

Like 操作符把記錄匹配到你說(shuō)明的某個(gè)模式。這個(gè)例子是返回ID中含“3”的所有記錄。

四種通配符的含義

通配符

描述

通配符

描述

%

代表零個(gè)或者多個(gè)任意字符

[ ]

指定范圍內(nèi)的任意單個(gè)字符

_

代表一個(gè)任意字符

[^]

不在指定范圍內(nèi)的任意單個(gè)字符

全部示例子如下:

Like 'BR%' 返回以'BR'開(kāi)始的任意字符串

Like 'br%' 返回以'br'開(kāi)始的任意字符串

Like '%een' 返回以'een'結(jié)束的任意字符串

Like '%en%' 返回包含'en'的任意字符串

Like '_en' 返回以'en'結(jié)束的三個(gè)字符串

Like '[CK]%' 返回以'C'或者'K'開(kāi)始的任意字符串 Like '[S-V]ing' 返回長(zhǎng)為四個(gè)字符的字符串,結(jié)尾是'ing',開(kāi)始是從SV

Like 'M[^c]%' 返回以'M'開(kāi)始且第二個(gè)字符不是'c'的任意字符串

4.使用Order By排序

在一個(gè)正式的 Select 查詢之后包含一個(gè) Order By 子句,后跟想排序的字段(可以有多個(gè))便可以說(shuō)明一個(gè)排序順序。

例:Select * From USERS Where ID Like '%3%' Order By ID

對(duì)返回的記錄按ID進(jìn)行排序。

以降序排序(默認(rèn)按升序),只需在排序的字段之后使用 Desc 關(guān)鍵字。

2/5頁(yè)

例:Select * From USERS Where ID Like '%3%' Order By ID Desc

5.使用 Top 顯示某個(gè)范圍的第一個(gè)記錄或最后一個(gè)記錄

使用 Top 關(guān)鍵字可以只顯示一個(gè)大記錄前面或后面的少數(shù)幾個(gè)記錄。在查詢中,Top 關(guān)鍵字與排序子句一起把結(jié)果集限制為少數(shù)幾個(gè)記錄或按某個(gè)百分比顯示整個(gè)結(jié)果記錄集合中的一

部分。

例:Select Top 3 * From USERS 返回USERS表中的前3條記錄

Select Top 10 Percent * From USERS 返回USERS表中前面的10%個(gè)

記錄

Select Top 3 * From USERS Order By ID Desc 返回USERS表中ID最大的的3

條記錄

6. As 對(duì)字段名進(jìn)行別名化

為什么在查詢中對(duì)字段命以別名,或重新命名,這樣做的原因有兩個(gè): (1)所涉及的表的字段名很長(zhǎng),想使字段在結(jié)果集中更易處理一些。

(2)創(chuàng)建的查詢產(chǎn)生了某些計(jì)算或合計(jì)列,需要對(duì)之進(jìn)行命名。

例:Select ID As 用戶號(hào) ,PAS As 密碼 From USERS

8.連接查詢

在實(shí)際使用過(guò)程中經(jīng)常需要同時(shí)從兩個(gè)表或者兩個(gè)以上表中檢索數(shù)據(jù)。連接就是允許同時(shí)從

兩個(gè)表或者兩個(gè)以上表中檢索數(shù)據(jù),指定這些表中某個(gè)或者某些列作為連接條件。在 SQL Server 中,可以使用兩種連接語(yǔ)法形式,一種是 Ansi 連接語(yǔ)法形式,這是連接用在 From

句中,另外一種是 SQL Server 連接語(yǔ)句形式,這是連接用在 Where 子句中。 Ansi 連接語(yǔ)法形式如下:

Select table_name.column_name,table_name.column_name,......

From {table_name [join_type] Join table_name On search_conditions}

Where [search_conditions]

Ansi 語(yǔ)法形式中,可以 Ansi 連接關(guān)鍵字來(lái)確定使用的連接形式。 (1)使用 Inner Join 關(guān)鍵字,結(jié)果集中僅包含滿足條件的行。

(2)使用 Cross Join 關(guān)鍵字,結(jié)果集中包含兩個(gè)表中所有行的組合。 (3)使用 Outer Join 關(guān)鍵字,結(jié)果集中既包含那些滿足條件的行,還包含那些其中某個(gè)表的

全部行。

連接有多種形式,例如內(nèi)連接、外邊接、無(wú)限制連接、自邊接等外連接又可以分為左外連接、

右外連接和全連接。下面詳細(xì)介紹這些連接方法。

(1)內(nèi)連接

內(nèi)連接用于把兩個(gè)表一個(gè)第三個(gè)表,在這個(gè)第三個(gè)表中,僅包含那么滿足連接條件的記錄的

記錄行。內(nèi)連接主要有兩種形式,即等價(jià)連接和自然連接。

等價(jià)連接就是連接通過(guò)比較列值是相等的列,等價(jià)連接總會(huì)產(chǎn)生冗余行,因?yàn)檫B接的列要顯

示兩次。

自然連接就是比較列值與兩個(gè)或者多個(gè)表中列是否相等,但是連接的列只顯示一次。自然連

接清除了等價(jià)連接產(chǎn)生的冗余行。

(2)無(wú)限制連接

無(wú)限制連接有時(shí)也稱為交叉連接,產(chǎn)生一個(gè)結(jié)果集。在這個(gè)結(jié)果集中中,包含了所連接的兩

個(gè)表中所有行的全部組合。交叉連接既可以使用 Ansi 連接的 Cross Join 關(guān)鍵字來(lái)創(chuàng)建,也可以使用 Where 子句的 SQL Server 連接形式可以產(chǎn)生非常大的結(jié)果集,例如如果在連接

中,一個(gè)表的記錄是12行,另一個(gè)表中的記錄是15行,那么在產(chǎn)生的結(jié)果集中就有 180

記錄。因此,這種連接形式通常沒(méi)有什么實(shí)際意義。

3/5頁(yè)

(3)外連接

內(nèi)連接是保證兩面三刀個(gè)表中所有的行都要滿足連接條件,而外連接則不然。在外連接中,

某些不滿條件的列也會(huì)顯示出來(lái),也就是說(shuō),只限制其中一個(gè)表的行,而不限制另一個(gè)表中

行。這種連接形式在許多情況下是非常有用的。外連接只能用于兩個(gè)表中。

Ansi 語(yǔ)法形式中,包含下列三種外連接關(guān)鍵字:

?Left Outer Join 包含了左表中的全部行(表達(dá)式中第一個(gè)表) ?Right Outer Join 包括了右表中的全部行(表達(dá)式中第二個(gè)表) ?Full Outer Join 包括了左表和右表中所有不滿足條件的行 SQL Server 連接語(yǔ)法形式中,包括下列兩種外連接運(yùn)算符: ?* = 包含了左表中的全部行(表達(dá)式中第一個(gè)表)

? = * 包括了右表中的全部行(表達(dá)式中第二個(gè)表)

左外連接和右連接都可以產(chǎn)生同樣的結(jié)果,關(guān)鍵是看表達(dá)式中出現(xiàn)的前后順序

(4)自連接

自連接就是把某一個(gè)表中的行同該表中另外一些行連接起來(lái)。自連接主要用在查詢比較相同

的信息。例如,如果希望得到所有合作出版書(shū)的作者,那么可以使用比較作者代號(hào)的查詢。

所比較的列必須有相同的或者兼容的數(shù)據(jù)類型。

為了連接同一個(gè)表,為該表指定兩個(gè)別名是非常重要的,這樣才可以把該邏輯上作為兩個(gè)不

同的表使用。通過(guò)在 From 子句中的表名后面增加一個(gè)名稱,這種名稱就是表的別名。

Ansi 語(yǔ)法形式中,自連接形式如下:

Select column_name,column_name,.....

From column_name alias [join_type] Join column_name alias

On search_conditions

Where table_name.column_name join_operator table_name.column_name

SQL Server 連接語(yǔ)法形式中,自連接形式如下:

Select column_name,column_name,.....

Where table_name.column_name join_operator table_name.column_name

(5)子查詢

Select 語(yǔ)句可以嵌套在其它許多語(yǔ)句中,例如 Select、InsertUpdate 或者 Delete 這些

嵌套的 Select 語(yǔ)句就稱為子查詢。子查詢有兩種類型,一種是只返回一個(gè)單值的子查詢,

這時(shí)它可以用在一個(gè)單值可以使用的地方種是返回一列值的的子查詢,這時(shí)它只能用在

Where 子句中。子查詢必須使用括號(hào)括起來(lái)。

9. SQL 查詢中涉及的多個(gè)合計(jì)函數(shù)

合計(jì)函數(shù)

參數(shù)

描述

AVG

([ALL|DISTINCT]expr)

數(shù)據(jù)表達(dá)式的平均值

COUNT

([ALL|DISTINCT]expr)

在某個(gè)表達(dá)式中數(shù)據(jù)值的數(shù)量

4/5頁(yè)

COUNT

(*)

所選擇行的數(shù)量

MAX

(expression)

表達(dá)式中的最大值

MIN

(expresion)

表達(dá)式中的最小值

SUM

([ALL|DISTINCT]expr)

數(shù)據(jù)表達(dá)式的總合值

[來(lái)源:programfan.com(編程愛(ài)好者)][選取:kjkimberly]

5/5頁(yè)

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多