簡體   English   中英

SQl存儲過程不起作用

[英]SQl Stored Procedure not working

我有一個無法正常運行的存儲過程:

CREATE DEFINER=`root`@`localhost` PROCEDURE `visitor_search`(
IN _startDate datetime,
IN _endDate datetime,
IN _visitorName text,
IN _personToVisit text
)
BEGIN
SELECT * FROM visitor
where
logged_in >= _startDate
and logged_in <= _endDate
and concat(firstname, "", lastname) like('%' + _visitorName + '%')
and person_to_visit like('%' + _personToVisit + '%')
order by logged_in desc;
END

我認為以下幾行正在發揮作用。

and concat(firstname, "", lastname) like('%' + _visitorName + '%')
and person_to_visit like('%' + _personToVisit + '%')

這是正確的語法嗎?

問候,

鮑勃

您也需要在那里使用CONCAT()

and concat(firstname, "", lastname) like concat('%', _visitorName, '%')
and person_to_visit like concat('%', _personToVisit, '%')

並且不要忘記使用其他定界符。

DELIMITER $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `visitor_search`(
IN _startDate datetime,
IN _endDate datetime,
IN _visitorName text,
IN _personToVisit text
)
BEGIN
SELECT * FROM visitor
where
logged_in >= _startDate
and logged_in <= _endDate
and concat(firstname, "", lastname) like concat('%', _visitorName, '%')
and person_to_visit like concat('%', _personToVisit, '%')
order by logged_in desc;
END $$
DELIMITER ;

試試這個也許:

and concat(firstname, "", lastname) like concat('%' , _visitorName , '%')
and person_to_visit like concat('%' , _personToVisit , '%')

LIKE不是功能

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM