Autor Téma: Duplicitné záznamy pri DISTINCT + GEN_ID(). Už viem ako - SubSelect  (Přečteno 167 krát)

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 2648
  • Karma: 25
    • Verze Delphi: XE7 professional
Mám
Kód: Delphi [Vybrat]
  1.   SELECT DISTINCT ...
  2.  
a potrebujem tam dostať primárny kľúč
Kód: Delphi [Vybrat]
  1.   SELECT DISTINCT GEN_ID(MyGenerator, 1), ...
  2.  
čo nefunguje, nakoľko sa DISTINCT uplatní až po získaní datasetu. Potrebujem to v:
Kód: Delphi [Vybrat]
  1.   FqryInsert.SQL.Text := 'INSERT INTO MyTable '+
  2.   ' SELECT DISTINCT GEN_ID(MyGenerator, 1), ...';
  3.  
Teraz to riešim cyklom a dávkovým spracovaním vo FireDAC.
Dá sa to vyriešiť nejako priamo? To jest, aby SELECT nevracal "duplicitné" záznamy pri použití GEN_ID().
« Poslední změna: 11-03-2017, 12:36:16 od Stanislav Hruška »
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 2648
  • Karma: 25
    • Verze Delphi: XE7 professional
Re:Duplicitné záznamy pri DISTINCT + GEN_ID()
« Odpověď #1 kdy: 11-03-2017, 12:35:43 »
Už to mám v hlave dosť dlho, ale samozrejme až po odoslaní príspevku mi svitlo - SubSelect. U mňa klasika.
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.

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