Jump to content
laboss

Order by com Predicados / Linq

Recommended Posts

laboss

Boa tarde, gostaria de fazer este select pelos perdicados (ou então pelo linq), mas estou aqui com um problema nas ordenções, eu gostava de fazer ordenações como faço no SQL com cases ou seja eu queria fazer isto:


SELECT
*
FROM CrmActivitiesTypesStatus
ORDER By
  CASE WHEN cSystemKeyword = 'Finish' THEN 0 ELSE 1 END,
  CASE WHEN cSystemKeyword = 'Waiting' THEN 0 ELSE 1 END,
nOrdem


Resultados

cCode		 cName				 cSystemKeyword						 nOrdem
--------------- ------------------------- ------------------------------------- -------------------
Concluida	 Concluida				 Finish								 37
EmCurso		 Em Curso				 Waiting							 38
Entrada		 Entradax				 Entry								 1
Agendado	 Agendado				 Agendado							 2
Recebida	 Recebida				 Received							 3
Aceite		 Aceite				 Accepted							 4
EmEspera	 Em espera...			 Wait								 5
Recuperada	 Recuperada			 Recovery							 6
Enviada		 Enviada				 Sended								 7
Recusada	 Recusada				 Refused							 8
Reenviado	 Reenviado				 Resended							 9
Entrada		 Entradax				 Entry								 34
Aceite		 Aceite				 Accepted							 35

Como podem ver eu tenho dois casos especificos onde vou ordenar os status se for finish ou waiting vao aparecer primeiro.

Sera que consigo fazer isto com perdicados? Ou com Linq?

Obrigado a todos,

Daniel

Edited by laboss

Share this post


Link to post
Share on other sites
jlpcalado

Experimenta:

SELECT * FROM CrmActivitiesTypesStatus

ORDER By

CASE cSystemKeyword

WHEN 'Finish' THEN 0

WHEN 'Waiting' THEN 0

ELSE 1

END,

nOrdem

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.