Předvánoční Black Friday Předvánoční Black Friday
Až 80% zdarma! Předvánoční BLACK FRIDAY akce. Více informací

Diskuze: SQL příkaz - výrobní termín

Ostatní jazyky SQL SQL a databáze SQL příkaz - výrobní termín

Aktivity (1)
Avatar
Peca
Člen
Avatar
Peca:17. května 10:18

Ahoj,

chtěl jsem se zeptat, jak by mohl vypadat příkaz - "jestli je výrobní termín použij výrobní pokud není použij potvrzený"

Děkuji za odpověď.

 
Odpovědět 17. května 10:18
Avatar
Peter Mlich
Člen
Avatar
Peter Mlich:17. května 10:52

To zalezi od databaze. Jestli teda spravne chapu, co potrebujes, moc jsi to nevysvetlil.

SELECT vyrobni || potvrzeny AS x -- spojovani retezcu oracle
SELECT CONCAT(vyrobni, potvrzeny) AS x -- spojovani retezcu mysql
SELECT CASE WHEN LENGTH(`desc`)>40 THEN CONCAT(SUBSTRING(`desc`,1,40),'...') ELSE `desc` END as `desc` -- neco jako if else, asi tam je i if else
 
Nahoru Odpovědět 17. května 10:52
Avatar
plelovsky
Člen
Avatar
plelovsky:17. května 11:04
COALESCE(VyrobniTermin, PotvrzenyTermin)

https://cs.wikipedia.org/…_koalescence

 
Nahoru Odpovědět 17. května 11:04
Avatar
Peca
Člen
Avatar
Odpovídá na Peter Mlich
Peca:17. května 11:28

Omlouvám se. Zkusím to vysvětlit lepe. Mám dvě tabulky jedna je "požadovaný termín" a druhá "výrobní termín" potřebují aby když je vyplněn "výrobní termín" i "požadovaný termín" aby upřednostnil tabulku, kde je vyplněn "výrobní termín". Pokud není vyplněn "výrobní termín" tak aby bral "požadovaný termín".

Děkuji za odpověď

 
Nahoru Odpovědět 17. května 11:28
Avatar
Odpovídá na Peca
Erik Šťastný:17. května 14:13

Já jako SQL naprostý amatér bych na místo hodin bádání vytáhl z tabulky "požadovaný termín" a "výrobní termín", porovnal v aplikaci a měl hotovo :)

Pokud ti jde o to se ale naučit něco nového se SQL, tak to beru :)

 
Nahoru Odpovědět 17. května 14:13
Avatar
Odpovídá na Peca
Dominik Janák:18. května 1:49

Zkus sem hodit nějakou definici těch "tejblů", ať se můžeme odpíchnout od něčeho reálnýho ;-)

Editováno 18. května 1:50
Nahoru Odpovědět 18. května 1:49
Nesnaž se převyšovat ostatní, ale sám sebe.
Avatar
Peca
Člen
Avatar
Odpovídá na Dominik Janák
Peca:18. května 8:02

tabulka: TabPohybyZbozi
sloupec tabulky: PozadDatDod_X

první SELECT by tedy asi mohl vypadat:
SELECT PozadDatDod_X
FROM TabPohybyZbozi

druhá tabulka: TabPohybyZbozi_EXT
druhý sloupec tabulky : _TerminVyroby

druhý SELECT by asi mohl vypadat
SELECT _TerminVyroby
FROM TabPohybyZbozi_EXT

a teď bych potřeboval nějak vyřešit tu podmínku:
mohla by vypadat nějak takto?

CASE WHEN PozadDatDod_X IS NOT NULL AND WHEN _TerminVyroby IS NOT NULL THEN _TerminVyroby
WHEN _TerminVyroby IS NULL THEN PozadDatDod_X
ELSE _TerminVyroby

Na obrázku zasílám screen sloupců z obou tabulek.

 
Nahoru Odpovědět 18. května 8:02
Avatar
Dominik Janák:18. května 8:44

V jaké databázi to máš? Postgresql, Oracle, MySQL, MSSQL, ...

Zkus použít třeba CASE.

Editováno 18. května 8:46
Nahoru Odpovědět 18. května 8:44
Nesnaž se převyšovat ostatní, ale sám sebe.
Avatar
Peca
Člen
Avatar
Peca:18. května 11:21

databáze je MSSQL,

 
Nahoru Odpovědět 18. května 11:21
Avatar
Odpovídá na Peca
Dominik Janák:19. května 18:52

Až najdu chvilku času kouknu na to :-)

Nahoru Odpovědět 19. května 18:52
Nesnaž se převyšovat ostatní, ale sám sebe.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 10.