[Access] 文章檢索功能


阿瑟 發表



抱歉一直忘記告訴各位如何使用 WHERE 來在SQL中尋找特定的資料, 利用WHERE我們可以做出簡單的文章檢索功能喔!

如果做文章檢索功能
抱歉小弟一直忘記介紹SQL的搜尋功能, 今天就介紹一下.

如何使用WHERE

Sql = "SELECT * FROM 資料表名稱 WHERE name='"& request("name") &"'"

由於前面的教學有跟大家介紹如何執行SQL指令, 在這邊就不再重述.
這段SQL條件的意思是在資料表名稱資料表中尋找name欄位符合request("name")的值.
用這句SQL選出來的資料集合所包含的都是name欄位等於request("name")的資料.
很讚吧!

但是...

仔細想想, 要是你打入的只是名字的一部分, 如張凱得您只有打來做尋找...
那怎麼辦呢? 這樣是不是就找不到了?

沒錯, 因此還有另外的方法, 小弟要先介紹幾個字元:
_, 這個底線代表所在的地方有一個未知的字元, 記得, 只有一個喔!
%, 這個百分比的字元代表所在的地方有多餘一個未知的字元, 也可能沒有任何字元.

像是 '_凱得' 代表的就是在 凱得 二字前面仍然有一個字元, 如張凱得,林凱得 這些都算, 只要前面有一個字元並且以凱得結尾的都算.
如果是 '%凱得' 代表的就是在 凱得 二字前面可能有字元(一個或是一個以上), 也有可能沒有字元, 因此張凱得,林凱得,花心凱得,凱得 這些都算, 只要前面有字元然後以凱得結尾的都算.
如果是 '凱得_' 代表的就是以凱得開頭然後後面有一個字元囉...依次類推.

由於%符號代表有字元也可以, 沒有字元也可以, 因此我們可以用 %凱得% 來找出所有包含 凱得 這個字串的資料.

文章檢索功能

Sql = "SELECT * FROM 資料表名稱 WHERE name LIKE '%"& request("name") &"%'"

只要在request("name")前面和後面加上%符號即可.
利用這個方法就可以找出某個欄位含有特定字串的資料, 也就是基本的文章檢索功能了.
由於=代表的是相等, 而%request("name")% 並不是一個固定的數值, 因此在這邊我們必須使用LIKE來找出類似的資料.

剩下的就給各位去探索了, 加油!

最後更新日期: 12/31/2002 2:57:46 PM