Autor Téma: Výběr z SQL každého druhého záznamu  (Přečteno 237 krát)

Offline Kony

  • Hrdina
  • ****
  • Příspěvků: 302
  • Karma: 1
    • Verze Delphi: Delphi 7
Výběr z SQL každého druhého záznamu
« kdy: 09-12-2020, 08:52:48 »
Ahoj, snažím se pomocí SQL dotazu vybrat z výpisu pouze každý druhý zaznam.
Nyní mám :
Kód: [Vybrat]
"SELECT * FROM dht_venku ORDER by dht_venku.ID DESC LIMIT 144"To my vybere posledních 144 záznamů, ale potřeboval bych z těchto záznamu zobrazit pouze každý druhý záznam.
Hledal jsem na internetu a našel jsem že by to mělo vypadat nějak takto
Kód: [Vybrat]
"SELECT * FROM dht_venku ORDER by dht_venku.ID DESC LIMIT 144 mod 2 = 0"ale to mi nic nezobrazí

Offline vandrovnik

  • Guru
  • *****
  • Příspěvků: 1132
  • Karma: 49
    • Verze Delphi: 10.3
Re:Výběr z SQL každého druhého záznamu
« Odpověď #1 kdy: 09-12-2020, 09:23:18 »
Ve Firebirdu 3 by šlo něco takovéhoto - možná to jde spojit i do jednoho SELECTu, ale narychlo se mi to nepovedlo.

Kód: [Vybrat]
SELECT
 x.*
FROM
(
SELECT
 row_number() over (order by a.Pobocka) as CisloRadku,
 a.*
FROM Pobocky a
) x
WHERE MOD(x.CisloRadku, 2) = 0

Offline Kony

  • Hrdina
  • ****
  • Příspěvků: 302
  • Karma: 1
    • Verze Delphi: Delphi 7
Re:Výběr z SQL každého druhého záznamu
« Odpověď #2 kdy: 10-12-2020, 09:56:31 »
spiš bych potřeboval řešení do jednoho řádku, abych to mohl použít v PHP

Offline vandrovnik

  • Guru
  • *****
  • Příspěvků: 1132
  • Karma: 49
    • Verze Delphi: 10.3
Re:Výběr z SQL každého druhého záznamu
« Odpověď #3 kdy: 10-12-2020, 10:08:16 »
spiš bych potřeboval řešení do jednoho řádku, abych to mohl použít v PHP

To je přeci jedno, nemusí tam být konce řádků, které jsem tam psal kvůli přehlednosti, může to být jeden dlouhý řádek. Spíš jestli ta databáze, co používáš (a neviděl jsem zmínku, jaká to je), umí ROW_NUMBER().

Jinak i v PHP se přeci dá psát text na víc řádků:
"xxxxx " .
"yyyyy";

Offline Kony

  • Hrdina
  • ****
  • Příspěvků: 302
  • Karma: 1
    • Verze Delphi: Delphi 7
Re:Výběr z SQL každého druhého záznamu
« Odpověď #4 kdy: 10-12-2020, 11:33:55 »
je to MySQL na Linuxu

Offline vandrovnik

  • Guru
  • *****
  • Příspěvků: 1132
  • Karma: 49
    • Verze Delphi: 10.3
Re:Výběr z SQL každého druhého záznamu
« Odpověď #5 kdy: 10-12-2020, 11:37:53 »