ďťż
 
tabela z datami ďťż
 
tabela z datami
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

tabela z datami



krzysiek - 18-05-2006 00:16
tabela z datami
  Witam,
mam problem. Chcialbym zrobic sobie widok, ktory wyswietlalby mi po kolei
daty w postaci YYYY-MM, zaczynajac od np. 2000-01 do dzisiaj.

Stworzylem sobie cos co wrzuca mi do jakiejs tabeli te wartosci, ale
chcialbym, zeby to byl widok, w ktorym beda sie one wyswietlaly, nie chce
tego na stale w bazie. Jak to zrobic??

Z gory dzieki za pomoc!!
K

a tutaj moj kod:
DECLARE @MIESIAC INT
DECLARE @ROK INT

SET @MIESIAC = 1
SET @ROK = 2000

TRUNCATE TABLE TABELA_temp

WHILE 1=1
BEGIN

IF @ROK=YEAR(GETDATE()) AND @MIESIAC=MONTH(GETDATE()) BREAK

INSERT TABELA_temp
SELECT CONVERT(CHAR(4),@ROK) + '-' +
CASE
WHEN LEN(@MIESIAC)=1
THEN '0'+CONVERT(CHAR(2),@MIESIAC)
WHEN LEN(@MIESIAC)=2
THEN CONVERT(CHAR(2),@MIESIAC)
END

IF @MIESIAC = 12
BEGIN
SET @ROK = @ROK + 1
SET @MIESIAC = 1
END
ELSE
BEGIN
SET @MIESIAC = @MIESIAC + 1
END
END





=?ISO-8859-2?Q?Pawe=B3_Matejski?= - 18-05-2006 00:16

  krzysiek wrote:
> Witam,
> mam problem. Chcialbym zrobic sobie widok, ktory wyswietlalby mi po kolei
> daty w postaci YYYY-MM, zaczynajac od np. 2000-01 do dzisiaj.

Zrób funkcje zwracającą zbiór, jeśli Twoja baza pozwala na takie funkcje.

--
P.M.




krzysiek - 18-05-2006 00:16

  > Zrób funkcje zwracającą zbiór, jeśli Twoja baza pozwala na takie funkcje.

a potem?? jak wyswietlic ten zbior??




Borafu - 18-05-2006 00:16

  krzysiek napisał(a):
> Witam,
> mam problem. Chcialbym zrobic sobie widok, ktory wyswietlalby mi po kolei
> daty w postaci YYYY-MM, zaczynajac od np. 2000-01 do dzisiaj.
>
> Stworzylem sobie cos co wrzuca mi do jakiejs tabeli te wartosci, ale
> chcialbym, zeby to byl widok, w ktorym beda sie one wyswietlaly, nie chce
> tego na stale w bazie. Jak to zrobic??

Nie chcesz tego na stałe w bazie, ale wpisałeś to do tabeli. Czyli co?
Będziesz tworzył tabelkę, robił na niej widok, a później usuwał tabelkę?
Jakoś wyjątkowo zakręcony ten pomysł.

BTW to nie napisałeś o jaką bazę chodzi

> a tutaj moj kod:
(...)
> WHILE 1=1
> BEGIN
> IF @ROK=YEAR(GETDATE()) AND @MIESIAC=MONTH(GETDATE()) BREAK
Łojeju! Aleś to powykręcał!
Nie prościej tak?

WHILE @ROK<>YEAR(GETDATE()) OR @MIESIAC<>MONTH(GETDATE())
BEGIN

Pozdro
--
Borafu





krzysiek - 18-05-2006 00:16

  > Nie chcesz tego na stałe w bazie, ale wpisałeś to do tabeli. Czyli co?
> Będziesz tworzył tabelkę, robił na niej widok, a później usuwał tabelkę?
> Jakoś wyjątkowo zakręcony ten pomysł.

napisalem, ze zrobilem tak (wpis do tabeli), bo tak umiem, ale chcialbym
inaczej
a przy okazji, to strasznie wolno mi to chodzi (ok. 2 minut). Nie wiecie
czemu?? Moze jest jakis szybszy sposob?

> BTW to nie napisałeś o jaką bazę chodzi

SQL Server 2000




krzysiek - 18-05-2006 00:16

  sorki, juz dziala!!




Borafu - 18-05-2006 00:16

  krzysiek napisał(a):
>
> napisalem, ze zrobilem tak (wpis do tabeli), bo tak umiem, ale chcialbym
> inaczej
To, że nie umiesz to normalne. Z tym się nikt nie rodzi, to nie
oddychanie - wszyscy się tego uczą.
Zwróciłem Ci raczej uwagę na błąd logiczny - skoro nie chcesz wpisywac
na stałe, to widok nieczego nie zmieni - on i tak przecież pobiera dane
z Twojej tabelki, więc tylko skomplikowałeś koncepcję, nie zyskując nic
w stosunku do zwykłego zapisania do tabelki i czytania bezpośrednio z niej.

Pozdro
--
Borafu




krzysiek - 18-05-2006 00:16

  > Zrób funkcje zwracającą zbiór, jeśli Twoja baza pozwala na takie funkcje.

ok, zrobilem funkcje, dziala, tylko teraz mam problem. Probuje wyswietlic
rekordy od 2000-01 do dzisiaj.
Naturalne jest wiec dla mnie wywolanie funkcji w takiej postaci:

SELECT * FROM MojaFunkcja( Year(getdate()), Month(getdate()))

no i niestety mi nie dziala.
Nie moglem uzyc funkcji Getdate() w definicji funkcji, a przy wywolaniu tez
nie moge??

jak to obejsc??

pozdrawiam,
K




krzysiek - 18-05-2006 00:16

  co najlepsze, to jak zadeklaruje zmienne, ktorym przypisze YEAR(getdate()),
itd., to dziala.
Tylko, ze chcialbym to zapisac jako widok, a chyba sie nie da tego zapisac z
deklaracjami zmiennych, nie??

Pomozcie!!
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    [MySQL] Czy da =?ISO-8859-2?Q?si=EA_wykonac_takie_powi=B1z?==?ISO-8859-2?Q?anie_mi=EAdzy_tabelami=2C_i_jak_to_odpyta=E6_? ==?ISO-8859-2?Q?=3F?= [mysql] przenoszenie danych =?ISO-8859-2?Q?mi=EAdzy_tabelami_?==?ISO-8859-2?Q?w_r=F3=BFnych_bazach?= SELECT MAX(nazwaPola) FROM tabela WHERE .... i ORA-01405: pobran? warto?ci? kolumny jest NULL =?iso-8859-2?Q?=5Bmssql=5D_update_na_kilku_tabelach_jednocze= B6nie?= [mysql] =?ISO-8859-2?Q?r=F3=BFnice_mi=EAdzy_tabelami?= Tabela aktualnych =?ISO-8859-2?Q?KRAJ=D3W?= [MSSQL] Rekurencja? Tabela, która tworzy drzewko [MSSQL] Tabela jako argument funkcji/procedury? [MySql] - jedna tabela, dwa aliasy w zapytaniu problem z select MAX (kolumna) from tabela
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • kfia-tek.keep.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com