我正在嘗試使用sql和asp.net執行搜索功能。我創建了一個Gridview,它使用以下sqldatasource sql語句來檢索數據。如何在sql中執行兩個類似參數的搜索功能
SELECT customer.fisrtname,
customer.lastname,
customer.initials,
customer.title,
address.street,
area.area,
suburb.suburbname
FROM address
INNER JOIN area
ON address.areaid = area.areaid
INNER JOIN areasuburb
ON area.areaid = areasuburb.areaid
INNER JOIN customeraddress
ON address.addressid = customeraddress.addressid
INNER JOIN customer
ON customeraddress.customerid = customer.customerid
INNER JOIN suburb
ON areasuburb.suburbid = suburb.suburbid
WHERE (customer.lastname LIKE '%' + @Lastname + '%')
OR (address.street LIKE '%' + @Street + '%')
我遇到的問題是,如果用戶沒有輸入任何值到姓田的那麼語句不返回任何數據,即使有有效數據。
請任何幫助,這將不勝感激。
你也可以允許的情況下'WHERE customer.lastname = 「」'。 –
如果你使用postgresql,它有一些漂亮的搜索功能(作爲擴展)。 – Lucas
你有沒有試過在你的參數上設置'DefaultValue'? – wlyles