Thread View: pl.comp.bazy-danych
3 messages
3 total messages
Started by piotr.pawel.olczyk
Tue, 28 Mar 2017 15:04
CASE .. WHEN .. THEN
Author: piotr.pawel.olczyk
Date: Tue, 28 Mar 2017 15:04
Date: Tue, 28 Mar 2017 15:04
14 lines
1408 bytes
1408 bytes
Witam, Mam pytanie czy w CASE .. WHEN .. THEN po THEN może być blok instrukcji? np. ..... select wartosc, case when wartosc >= 10 then -> tu blok instrukcji przypisujących wartości w różnych kolumnach end, ..... from tabela Z góry dziękuje za odpowiedź
Re: CASE .. WHEN .. THEN
Author: Roman Tyczka
Date: Thu, 30 Mar 2017 07:43
Date: Thu, 30 Mar 2017 07:43
22 lines
1351 bytes
1351 bytes
On Tue, 28 Mar 2017 08:04:04 -0700 (PDT), piotr.pawel.olczyk@gmail.com wrote: > Mam pytanie czy w CASE .. WHEN .. THEN po THEN może być blok instrukcji? Ale jakich instrukcji? Po THEN możesz tylko zwrócić wartość dla kolumny spełniającej warunek WHEN. > np. > ..... > select wartosc, > case > when wartosc >= 10 then -> tu blok instrukcji przypisujących wartości w różnych kolumnach > end, > ..... > from tabela Powiedz jaki konkretnie chcesz osiągnąć efekt, tak będzie prościej. -- pozdrawiam Roman Tyczka
Re: CASE .. WHEN .. THEN
Author: wloochacz
Date: Mon, 03 Apr 2017 17:39
Date: Mon, 03 Apr 2017 17:39
29 lines
1753 bytes
1753 bytes
W dniu 2017-03-28 o 17:04, piotr.pawel.olczyk@gmail.com pisze: > Witam, > > Mam pytanie czy w CASE .. WHEN .. THEN po THEN może być blok instrukcji? Oczywiście. > np. > ..... > select wartosc, > case > when wartosc >= 10 then -> tu blok instrukcji przypisujących wartości w różnych kolumnach > end, > ..... > from tabela W takim przypadku (czyli w SELECT, podmieniając wartość w locie po spełnieniu warunku), tak se ne da. Wartość w kolumnie (upraszczając) to skalar i oczekuje skalarnej wartości. Musiałbyś napisać CASE dla każdej kolumny, ale to samo możesz uzyskać pisząc IIF dla każdej kolumny, czyli: select wartosc, iif(wartosc >= 10, 0, wartosc), iif(wartosc1 >= 10, 0, wartosc1) itd. -- wloochacz
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads