2017-08-13 33 views
2

我在mysql.it中有一個這樣的comanies表,它有3列。 is_verified,is_platinum,platinum_start_date,end_date。 table collumns代表四個條件對Laravel集合進行排序

在前端,數據顯示爲分頁格式,因此現在我想要獲取僅列出一個變量的公司列表。 只是爲了顯示公司首先驗證再驗證非鉑然後等

  1. 所有白金和驗證公司
  2. 所有白金
  3. 所有驗證公司
  4. 所有沒有證實也沒有白金用戶。

我已經通過 「排序依據」 試過了, 「排序」 等,但通過使用單獨的可變

$ =公司:: DeveloperCompanies其中( 'is_approved', '=', 1) - > orderBy('created_at','desc') - > paginate(9);

here is a table format

回答

1

使用orderBy四次,每列

$companies = DeveloperCompanies::where('is_approved', '=', 1) 
->orderBy('is_verified', 'desc') 
->orderBy('is_platinium', 'desc') 
->orderBy('platinium_start_date', 'desc') 
->orderBy('platinium_end_date', 'desc') 
->paginate(9); 
+0

偉大它的工作,但有時它的鉑金,但起始日期日期和結束日期已經過期意味着,這將是13-07-207-12- 08-2017 所以它已過期是否有任何檢查,我可以申請只是在這個價值,如果它不是有效的日期範圍它仍然是白金公司 –

+0

目前,我使用幫助功能在每個檢查是否有效,然後顯示其他跳過,但我認爲它的時間需要檢查每個值的過程。只是如果它不在日期跳過這 –

+0

再次用於您的新條件,像這樣'DeveloperCompanies :: where('is_approved','=',1) - > where('column','> =','value ')...' – Ali

相關問題