我是MySQL程序的新手,我試圖爲表編寫搜索過程。用於在多個列中搜索具有多個參數的表的MySQL程序
CREATE PROCEDURE `Search`(
IN in_locality VARCHAR(200),
IN in_type VARCHAR(200),
IN in_city VARCHAR(200)
)
BEGIN
SELECT * FROM property_details MRP INNER JOIN property_image MRPI
ON MRP.basic_id=MRPI.basic_id
WHERE ((in_locality = '') or (MRP.locality = in_locality))
AND ((in_property_type = '') or (MRP.property_type = in_property_type))
AND ((in_city = '') or (MRP.city = in_city))
GROUP BY MRP.id;
END
現在,這個過程正在爲:
CALL Search('','','','mumbai');
但不適用於:
CALL Search('','',''mumbai','pune'');
在正常的SQL我可以使用此查詢爲:
SELECT * FROM property_details where city in('mumbai','chennai')
但我不知道如何在程序中做到這一點。
告訴字段 – Athi
如果你想搜索多個城市的值,這是行不通的。你有一個平等的條件。你需要一個這樣的程序嗎?爲什麼不只是使用查詢? – Jayadevan