none
CASE RRS feed

  • Pergunta

  •  Olá pessoal,

     Gostaria de saber se existe como trabalhar com um OR ou IN no CASE ou algo parecido. Estou fazendo o seguinte:

    SELECT CASE DATENAME(WEEKDAY, '2006-08-20')

                 WHEN 'Saturday' THEN 'Não é dia útil'
                 WHEN 'Sunday' THEN 'Não é dia útil' 
                 ELSE 'É dia útil' END

     Como Saturday e Sunday retornam uma mesma resposta, eu gostaria de agrupá-los como em um IN, ou usando OR dentro do mesmo WHEN. Não sei se isto é possível, gostaria de saber se é ou não. Abaixo está um exemplo mais ou menos do que eu quero fazer.

     Ex.:

    SELECT CASE DATENAME(WEEKDAY, '2006-08-20')

                 WHEN IN ('Saturday', 'Sunday') THEN 'Não é dia útil'
                 ELSE 'É dia útil' END

     Se não fui muito claro postem que eu tento esclarecer.

     Valeu.

    segunda-feira, 21 de agosto de 2006 14:32

Respostas

  • Oi, Felipe, bom dia.

    E se você usasse o IF?

    Se existem apenas os dois casos 'é útil' e 'não é útil', talvez não haja necessidade de um CASE.

    if (DATENAME(WEEKDAY, '2006-08-20') in ('Saturday', 'Sunday'))
     select 'Não é dia útil'
    else
     select 'É dia útil'

    segunda-feira, 21 de agosto de 2006 15:00

Todas as Respostas

  • Oi, Felipe, bom dia.

    E se você usasse o IF?

    Se existem apenas os dois casos 'é útil' e 'não é útil', talvez não haja necessidade de um CASE.

    if (DATENAME(WEEKDAY, '2006-08-20') in ('Saturday', 'Sunday'))
     select 'Não é dia útil'
    else
     select 'É dia útil'

    segunda-feira, 21 de agosto de 2006 15:00
  • Felipe ,

    Até onde eu sei isso não é possivel, mas seu exemplo inicial, atende realmente sua necessidade.

    SELECT CASE DATENAME(WEEKDAY, '2006-08-20')

                 WHEN 'Saturday' THEN 'Não é dia útil'
                 WHEN 'Sunday' THEN 'Não é dia útil' 
                 ELSE 'É dia útil' END

     

    Valeu..Espero ter ajudado.

     

    segunda-feira, 21 de agosto de 2006 15:03
  • Olá Felipe  veja um exemplo que tenho em meu site....  vc pode colocar o OR sem problemas...

     

    (Construindo uma Consulta com o Select Case)
    http://www.msit.com.br/publicacaoDetalhes.aspx?id=10 

     

    SELECT  COD,  CASE TIPO WHEN 'A'  OR 'B'  THEN 'CHOCOLATES'

     

    qualquer duvida retorne

    abs

     

    segunda-feira, 21 de agosto de 2006 15:07
  • Valeu pessoal,

     Cláudia, o exemplo que você passou é exatamente o que eu queria fazer mas não estava conseguindo, aí parti pro CASE.

     Valeu.

    segunda-feira, 21 de agosto de 2006 15:17