रूप @rmobis उसके जवाब में निर्दिष्ट है, [इसे में कुछ और जोड़ना]
order by
दो बार का उपयोग आप कर सकते हैं:
MyTable::orderBy('coloumn1', 'DESC')
->orderBy('coloumn2', 'ASC')
->get();
और सेकंड जैसा कि पहले उत्तर आप कर सकते हैं की टिप्पणी में निर्दिष्ट @rmobis,
MyTable::orderByRaw("coloumn1 DESC, coloumn2 ASC");
->get();
दोनों एक ही क्वेरी का उत्पादन करेगा का पालन के रूप में
SELECT * FROM `my_tables` ORDER BY `coloumn1` DESC, `coloumn2` ASC
: दूसरी तरह से
raw order by
का उपयोग करते हुए यह है क्या करना है, कॉलम द्वारा ऑर्डर करने के लिए सरणी की तरह पास करें,
$myTable->orders = array(
array('column' => 'coloumn1', 'direction' => 'desc'),
array('column' => 'coloumn2', 'direction' => 'asc')
);
यह पाश में iterate
है क्या करने के लिए एक और रास्ता,
$query = DB::table('my_tables');
foreach ($request->get('order_by_columns') as $column => $direction) {
$query->orderBy($column, $direction);
}
$results = $query->get();
आशा है कि यह मदद करता है :)
स्रोत
2017-04-25 06:27:40
यह अच्छा होगा अगर हम की तरह एक सरणी गुजारें सकता: 'उपयोगकर्ता :: orderBy (सरणी (' नाम '=>' desc ',' ईमेल '=>' asc ')) ' – JoshuaDavid
@ फ़िरकोडिंग, आप' $ उपयोगकर्ता-> ऑर्डर = सरणी (सरणी (' कॉलम '=>' नाम ',' दिशा '= > 'desc'), सरणी ('कॉलम' => 'ईमेल', 'दिशा' => 'asc')); ' – rmobis
क्या कोई स्थापित क्वेरी पर ऑर्डर जोड़ने का कोई तरीका है? – Rafael