計(jì)算機(jī)等級(jí)三級(jí)數(shù)據(jù)庫(kù):全面接觸SQL語(yǔ)法(2)

字號(hào):

例如下面這兩個(gè)例子將會(huì)具有相同的效果,都會(huì)從職員表格中返回所有字段的數(shù)據(jù)。
    例如:
    若是我們要查詢出職員表格中的所有記錄,可以通過(guò)下面的語(yǔ)句來(lái)完成。
    SELECT ALL* FROM 職員表格; DISTINCT
    對(duì)某個(gè)表格所選擇的字段數(shù)據(jù),略過(guò)重復(fù)的情況,也就是說(shuō),針對(duì)某個(gè)字段查詢出來(lái)的記錄結(jié)果是的。例如有許多存放在職員表格的職員
    數(shù)據(jù),也許會(huì)具有相同的姓名,所以若是我們用SQL語(yǔ)句中的SELECT DISTINCT,則查詢出來(lái)的結(jié)果將會(huì)針對(duì)不一樣的姓名加以篩選。若是您把
    DISTINCT 加以省略,則這樣的查詢會(huì)顯示所有的記錄。
    DISTINCTROW
    將整條記錄重復(fù)的記錄忽略掉,而不是只有針對(duì)某一個(gè)字段的數(shù)據(jù)。
    table
    指定查詢記錄所需要的表格。
    例如:
    SELECT DISTINCTROW 公司名稱
    FROM 顧客表格 INNER JOIN 訂單表格
    ON 顧客表格.顧客ID=訂單表格.顧客ID
    ORDER BY 公司名稱;
    如果您忽略 DISTINCTROW 則會(huì)對(duì)每個(gè)公司產(chǎn)生一行以下的訂單數(shù)據(jù)。此外,若是DISTINCTROW只有用在一個(gè)表格當(dāng)中,則會(huì)被省略掉。
    從第一條或最后一條開始(利用ORDER BY條件子句),返回特定條數(shù)的數(shù)據(jù)。
    例如:
    當(dāng)您想要知道在2000年,班上前25名的學(xué)生姓名數(shù)據(jù)時(shí),您可以輸入這樣的語(yǔ)句:
    SELECT 25 學(xué)生姓名
    FORM 學(xué)生表格
    WHERE 畢業(yè)年份=1994
    ORDER BY 畢業(yè)成績(jī)平均分?jǐn)?shù) DESC;
    如果您沒有加上ORDER BY 這行條件的話,您所得到的數(shù)據(jù),將會(huì)隨機(jī)的數(shù)據(jù)。此外,在語(yǔ)句之后,除了可以加上數(shù)字以外,還可以利用保留
    字PERCENT來(lái)查詢。
    例如:
    SELECT 10 PERCENT學(xué)生姓名
    FROM學(xué)生表格
    WHERE畢業(yè)年份=1994
    ORDER BY畢業(yè)成績(jī)平均DESC;
    PARAMETERS(參數(shù))聲明的用法
    對(duì)于參數(shù)型的查詢語(yǔ)法中,對(duì)參數(shù)的名稱以及數(shù)據(jù)類型作 聲明的操作。
    PARAMETERS name datatype[,name datatype[,...]]
    name
    PARAMETERS的名稱。您可以把參數(shù)名稱當(dāng)作字符串來(lái)使用,若是名稱中包含了空字符串,可以利用中括號(hào)來(lái)處理,例如:“VBeden”。
    datatype
    輸入?yún)?shù)的數(shù)據(jù)類型。
    例如:
    若是您在查詢時(shí),需要機(jī)動(dòng)的輸入姓名 ,可以利用下列的方式完成:
    PARAMETERS “輸入姓名” Text;
    SELECT*
    FROM 職員表格
    WHERE姓名=“輸入姓名:”;