NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
Avatar
petr.chatar.anton:23.4.2015 10:14

Ahoj,
mám v MS SQL serveru sadu (12) stejných tabulek, každá obsahuje data za jeden měsíc. Tabulka pro každý měsíc ale vzniká až v daném měsíci. Lze udělat dotaz (nebo pohled), který mi spojí data ze všech 12 tabulek dohromady, ale nebude řvát, že mu některá tabulka chybí? V únoru by mi ukázal data z tabulek 01 a 02, v listopadu 01 až 11.
Předem díky za odpovědi.

 
Odpovědět
23.4.2015 10:14
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na petr.chatar.anton
David Hartinger:23.4.2015 10:20

Už jen ta první věta "Mám v MS SQL serveru sadu (12) stejných tabulek" signalizuje, že je něco špatně. Pokud těch řádků nejsou miliony, tak mají být v jedné tabulce a každý má mít do kterého měsíce patří. Problém, na který narážíš, vyplývá ze špatného návrhu databáze. Ideálně to dej do jedné tabulky, pokud to máš tak divně z výkonnostních důvodů, tak si udělej další tabulku, kde si ukládej které tabulky jsou vytvořené. Potom dotaz jednoduše sestavíš podle toho a nic ni nebude chybět.

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
23.4.2015 10:20
New kid back on the block with a R.I.P
Avatar
petr.chatar.anton:23.4.2015 10:31

Vím, že to není ideální, ale takhle to má ten software, ze kterého si data tahám.

 
Nahoru Odpovědět
23.4.2015 10:31
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na petr.chatar.anton
David Hartinger:23.4.2015 10:50

Aha, to je pak radost s něčím takovým pracovat :) Ještě si můžeš pohrát s tímhle:

SELECT * FROM information_schema.tables

Mělo by to vrátit názvy vytvořených tabulek, z toho by to taky mohlo jít poznat.

Nahoru Odpovědět
23.4.2015 10:50
New kid back on the block with a R.I.P
Avatar
petr.chatar.anton:23.4.2015 11:28

Já na to půjdu jinudy, v programu se stejně uživatele ptám, které období zpracovává, z toho údaje si pak sestavím dotaz. Myslel jsem si, že bych se tomu sestavování vyhnul, pokud by existovala možnost udělat "univerzální" dotaz :-).
Každopádně díky moc.

 
Nahoru Odpovědět
23.4.2015 11:28
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 5 zpráv z 5.