Stránka 1 z 1
Modifikace výstupu SQL dotazu
Napsal: 26 zář 2016 10:43
od Uziv00
Ahoj,
mám SQL dotaz, který vrací výsledky ve čtyřech sloupcích (jméno, příjmení, titul, funkce). A výstup SQL bych potřeboval doplnit o další sloupec, kde by byly telefonní kontakty. Osoby se mění, ale telefon je pro každou funkci stejný. => chtěl bych nějak "natvrdo" ty telefonní čísla do dotazu dopsat. Dotaz bude zpracováván další aplikací, která se stará o komunikaci.
Lze to vůbec?
Díky za odpověď.
Re: Modifikace výstupu SQL dotazu Vyřešeno
Napsal: 26 zář 2016 11:37
od satik
Normálně třeba přes LEFT JOIN přes id_funkce do tabulky, kde budeš mít k id_funkce id telefonu.
Re: Modifikace výstupu SQL dotazu
Napsal: 26 zář 2016 13:05
od Uziv00
Díky za odpověď. To není ono. Telefony nesmí být v žádné tabulce. Potřebuji je prostě dopsat jako poslední sloupec sql dotazu.
Re: Modifikace výstupu SQL dotazu
Napsal: 26 zář 2016 13:32
od satik
Můžu vědět, co ti brání mít ty telefony v druhé tabulce a joinovat to? :)
Přinejhorším ty telefony posílat jako tabulku jako součást toho sql dotazu, ale bude to dost neefektivní, SQL by muselo pokaždý znova ty telefony parsovat.
A taky záleží na tom, jako přesně verzi a implementaci SQL používáš, jestli to vůbec umí.
Re: Modifikace výstupu SQL dotazu
Napsal: 26 zář 2016 13:40
od Uziv00
Problém je v tom, že je třeba tu komunikaci zprovoznit a já nemám přístup do DB, abych vytvářel tabulky. Firma, která to spravuje za to bude chtít peníze a bude jí to trvat aspoň tři měsíce. DB je oracle.
Představoval bych si něco jako where id.fce = 4 id.fce = 602123456, pokud to jde...
Re: Modifikace výstupu SQL dotazu
Napsal: 26 zář 2016 13:52
od satik
Pristup nemas do administrace nebo nemas vubec pravo vytvaret tabulky?
Prinejhorsim bych asi v dotazu poslal ty cisla jako data do docasny tabulky, tu pouzil s tim joinem na usery a pak ji zase smazal.
Snad muzes vytvaret aspon docasny tabulky, naky info o nich treba tu:
https://docs.oracle.com/cd/B28359_01/se ... m#i1006400
Re: Modifikace výstupu SQL dotazu
Napsal: 26 zář 2016 14:16
od Uziv00
Představoval bych si něco jako where id.fce = 4 (pak) id.fce = 602123456, pokud to jde...
Mám práva pouze pro prohlížení...
Re: Modifikace výstupu SQL dotazu
Napsal: 26 zář 2016 14:37
od satik
Pak asi replace
http://docs.oracle.com/cd/B19306_01/ser ... ons134.htmI když popravdě je to dost prasárna, takže bych co nejdřív to vyřešil jinak :)
Re: Modifikace výstupu SQL dotazu
Napsal: 26 zář 2016 14:42
od Uziv00
Zkusím. Dík.
Re: Modifikace výstupu SQL dotazu
Napsal: 26 zář 2016 16:01
od petrmet
Case fce.id
when 4 then 602123456
when 5 then 123546897
when ...
else 111111111
end
Re: Modifikace výstupu SQL dotazu
Napsal: 26 zář 2016 16:02
od Uziv00
To vypadá dobře. Dík!