Autor Téma: Pomoc s SQL - karteziánsky súčin  (Přečteno 658 krát)

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3520
  • Karma: 35
    • Verze Delphi: XE7 professional
Pomoc s SQL - karteziánsky súčin
« kdy: 13-12-2017, 15:03:04 »
Mám tabuľku predpisov B a tabuľku faktúr INS, kde užívateľ určuje ako sa bude náklad deliť podľa podúčtov. Tabuľky SF a LF (Landlord_Flat) sú spojovacie tabuľky pre väzby M:N.
Problém robí hrubo vyznačená väzba FKSubaccounts. Správne by som mal mať dve väzby. A to ešte podľa FKServiceParameters.
Parametre 2 a 3 nemajú vplyv na výsledok, ale majú mať uvedené hodnoty.
Druhý obrázok ukazuje podúčty, ktoré sú podľa úrovne 0. A ja potrebujem získať byty 1 a 3, ktoré nie sú zahrnuté v podúčtoch, ale majú vystavený predpis.

Mám obavy, že to je neriešiteľné.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3520
  • Karma: 35
    • Verze Delphi: XE7 professional
Re:Pomoc s SQL - karteziánsky súčin
« Odpověď #1 kdy: 13-12-2017, 21:32:33 »
Došiel som k záveru, že musím do tabuľky predpisov doplniť hodnotu FKSubaccounts. Nadšený nie som. Jedná sa o suverénne najdlhšiu tabuľku aplikácie. No inú možnosť nevidím.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3520
  • Karma: 35
    • Verze Delphi: XE7 professional
Re:Pomoc s SQL - karteziánsky súčin
« Odpověď #2 kdy: 14-12-2017, 08:25:59 »
Nenachádzam na seba dosť správnych slov.

Ak pri definícii podúčtu doň nezaradím nejaký byt, tak inde nemám žiadnu možnosť to zmeniť. A taký pokus je už z podstaty volovina. Neexistuje k tomu žiadna logika. Preto aj doplnenie poľa FKSubacconts do tabuľky DEPOSTIS je nezmysel.

Ja som si len vytvoril fiktívnu logiku v hlave.
To čo som chcel riešiť v jednom kroku sú v skutočnosti dve samostatné spolu nijako nesúvisiace úlohy.

Ale jeden klad to má. Vnikol som trocha hlbšie do problematiky SQL ;) . Až nato, že mi to trvalo trochu dlhšie.
 
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

 

S rychlou odpovědí můžete používat BB kódy a emotikony jako v běžném okně pro odpověď, ale daleko rychleji.

Upozornění: do tohoto tématu bylo naposledy přispěno před 120 dny.
Zvažte prosím založení nového tématu.

Jméno: E-mail:
Ověření:
Kolik je šest plus čtyři (slovem):