Új hozzászólás Aktív témák
-
bpx
őstag
válasz szmegma #1360 üzenetére
az a baj a mysqllel, hogy nincs benne egyszeru "generator" funkcio, mert egyebkent ez a feladat pl. arra is lefordithato, hogy generaljunk szamokat 1-31-ig es adjunk hozza ennyi napot a mostani datumhoz, ami tisztan SQL lenne
de rekurziv lekerdezessel megoldhato, csak kell egy olyan forras, amelynek legalabb 31 sora van
peldaul select SQL megoldas:select date_add(CURDATE(), interval o.num day) from
(select @n := @n + 1 as num
from information_schema.columns, (select @n := 0) n
limit 31) o;ezzel persze az a baj, hogy mindig az information_schema.columns-hoz (vagy amire epp meg van irva) kell nyulni + akar el is lehetne tarolni a szamokat 1-31-ig egy kulon tablaban (es nem kell feltalalni ujra a kereket naptar tablaval):
create table numbers (n int);
insert into numbers
select @n := @n + 1 as num
from information_schema.columns, (select @n := 0) n
limit 31;
select date_add(CURDATE(), interval n.n day) from numbers n;csak hat ez meg megint ronda (szerintem)
szemlelteteskeppen, Oracle-ben ez ennyi:
select sysdate + level from dual connect by level <= 31;
a dual tabla sajatossagai miatt ez raadasul sem diszkrol, sem a cache-bol nem olvas, nem kell PL/SQL-ezni meg context switch sincs
Új hozzászólás Aktív témák
Állásajánlatok
Cég: Ozeki Kft
Város: Debrecen
Cég: Ozeki Kft
Város: Debrecen