विचार यह है कि परिणाम को सरणी में उनकी संबंधित स्थिति से क्रमबद्ध किया जाए। इस मामले में MySQL FIND_IN_SET
फ़ंक्शन आपकी मदद कर सकता है।
आप कथन द्वारा निम्नलिखित आदेश जोड़ सकते हैं:
ORDER BY FIND_IN_SET(car.id,'3,10,7')
नोट: आपको इस ऑर्डर को अपने समकक्ष cake php mysql
. में स्टेटमेंट द्वारा कन्वर्ट करना होगा सवाल।
नमूना इनपुट:
क्वेरी:
SELECT *
FROM cars
id
2
3
4
5
6
7
8
9
10
11
आउटपुट:
क्वेरी:
SELECT *
FROM cars
WHERE cars.id IN (3,10,7)
ORDER BY FIND_IN_SET(cars.id,'3,10,7')
id
3
10
7
संपादित करें:
मुझे नहीं पता CAKE PHP syntax
mysql क्वेरी बनाने में।
लेकिन समकक्ष क्वेरी cake php mysql
. में ऐसा कुछ हो सकता है:
$cars = $this->car->find('all', array(
'conditions' => array(
'car.id' => array(3, 10, 7)
),
'limit' => 3,
'order' => array(FIND_IN_SET('car.id' , '3,10,7'))
));