SQL jak powtorzyc wiersze ?
lukas - 17-06-2007 00:16
SQL jak powtorzyc wiersze ?
Witam serdecznie
Mam pro?b? czy kto? mo?e wie jak zbudowa? zapytanie SQL w taki sposób aby wiesz z bazy zosta? powtórzony konkretna ilo?? razy - pobrany z innego pola ?
| ean | ilo??|
| 590123456789111 | 40 |
chcialbym zaby kod ean zostal powtorzony 40 razy
Pozdrawiam Serdecznie
Marcin - 17-06-2007 00:16
lukas wrote: > Witam serdecznie > > Mam pro?b? czy kto? mo?e wie jak zbudowa? zapytanie SQL w taki sposób aby > wiesz z bazy zosta? powtórzony konkretna ilo?? razy - pobrany z innego pola > ? > > > > | ean | ilo??| > > | 590123456789111 | 40 | > > > > chcialbym zaby kod ean zostal powtorzony 40 razy
Jaka baza? Mo?e zrób to w procedurze sk?adowanej w p?tli. Albo zdefiniuj tabelk? x(ilosc int), wype?nij j? wartosciami 1..N i potem napisz zapytanie: select t.* from tabelka t join x on x.ilosc <= t.ilosc;
M.
Marcin - 17-06-2007 00:16
No i jeszcze indeks na x(ilosc) albo primary key.
M.
szaman - 17-06-2007 00:16
lukas pisze: > Witam serdecznie > > Mam pro?b? czy kto? mo?e wie jak zbudowa? zapytanie SQL w taki sposób aby > wiesz z bazy zosta? powtórzony konkretna ilo?? razy - pobrany z innego pola > ? > > > > | ean | ilo??| > > | 590123456789111 | 40 | > > > > chcialbym zaby kod ean zostal powtorzony 40 razy > > > > Pozdrawiam Serdecznie > > Robisz z??czenie kartezja?skie z tabel? która ma 40 rekordów i po sprawie.
Tabela mo?e mie? du?o wi?cej rekordów ale ty mo?esz ograniczyc jeszcze jakim? warunkiem do tych 40 - no ale to ju? szczegó?.
=?ISO-8859-2?Q?Pawe=B3_Matejski?= - 17-06-2007 00:16
szaman wrote: > lukas pisze: >> Witam serdecznie >> >> Mam pro?b? czy kto? mo?e wie jak zbudowa? zapytanie SQL w taki sposób >> aby wiesz z bazy zosta? powtórzony konkretna ilo?? razy - pobrany z >> innego pola ? >> >> >> >> | ean | ilo??| >> >> | 590123456789111 | 40 | >> >> >> >> chcialbym zaby kod ean zostal powtorzony 40 razy >> >> >> >> Pozdrawiam Serdecznie >> >> > Robisz z??czenie kartezja?skie z tabel? która ma 40 rekordów i po sprawie. > > Tabela mo?e mie? du?o wi?cej rekordów ale ty mo?esz ograniczyc jeszcze > jakim? warunkiem do tych 40 - no ale to ju? szczegó?.
No to spróbuj ten szczegó? pokona?...
-- P.M.
ipluta@wp.pl - 17-06-2007 00:16
On 28 Maj, 12:15, Marcin <s...@noaddress.xx> wrote: > lukas wrote: > > Witam serdecznie > > > Mam pro?b? czy kto? mo?e wie jak zbudowa? zapytanie SQL w taki sposób aby > > wiesz z bazy zosta? powtórzony konkretna ilo?? razy - pobrany zinnego pola > > ? > > > | ean | ilo??| > > > | 590123456789111 | 40 | > > > chcialbym zaby kod ean zostal powtorzony 40 razy > > Jaka baza? Mo?e zrób to w procedurze sk?adowanej w p?tli. > Albo zdefiniuj tabelk? x(ilosc int), wype?nij j? wartosciami > 1..N i potem napisz zapytanie: > select t.* from tabelka t join x on x.ilosc <= t.ilosc; >
No w?a?nie, jaka baza? Je?eli to PostgreSQL, to polecam funkcj? generate_series. http://www.postgresql.org/docs/8.2/i...tions-srf.html
Borafu - 17-06-2007 00:16
Pawe? Matejski pisze: >> Robisz z??czenie kartezja?skie z tabel? która ma 40 rekordów i po sprawie. >> >> Tabela mo?e mie? du?o wi?cej rekordów ale ty mo?esz ograniczyc jeszcze >> jakim? warunkiem do tych 40 - no ale to ju? szczegó?. > > No to spróbuj ten szczegó? pokona?...
Chyba si? da... Niech b?dzie tabela o nazwie NaszaTabela z kluczem o nazwie NaszId Wtedy np
SELECT * FROM NaszaTabela FULL OUTER JOIN (SELECT TOP 40 id = (SELECT TOP 1 NaszId FROM NaszaTabela) FROM NaszaTabela ) T ON NaszaTabela.NaszId = T.id
Mnie dzia?a, cho? przyznam ?e wcale mi si? nie podoba ;-) -- Borafu
szaman - 17-06-2007 00:16
Wkurzasz mnie ale niech Ci b?dzie.
create table TEJ ( LP NUMBER )
create table TA ( NAME VARCHAR(100) )
insert into ta (NAME) values ('Jacu?'); insert into ta (NAME) values ('Wacu?');
insert into tej (LP) values (1); insert into tej (LP) values (2); insert into tej (LP) values (3); insert into tej (LP) values (4); insert into tej (LP) values (5);
####### teraz zapytanie
select ta.* from ta , tej
Zwróci 10 Wacusiów i Jacusiów czyli 2*5 ( po pi?? z TA )
a zapytanie
SELECT TA.* FROM TA , TEJ WHERE TEJ.LP <4
zwróci ich ile ?!
Prosz? odpowiedz to b?d? mia? pewno??, ?e nie na darmo si? trudz? ;-)
lukas - 17-06-2007 00:17
No w?a?nie, jaka baza? Je?eli to PostgreSQL, to polecam funkcj? generate_series. http://www.postgresql.org/docs/8.2/i...tions-srf.html
witam sql 2005 baza cdn xl
dziekuje
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
jak to =?ISO-8859-2?Q?zrobi=E6=2E=2E=2E=3F_TSQL_sql_server?==?ISO-8859-2?Q?_?=
Jak =?windows-1250?Q?pobra=E6_szacowan=B9_wielko=9C=E6_zbiory_wy nikowego_w_MS?==?windows-1250?Q?_SQL_2005=3F?=
=?iso-8859-2?Q?=5BMS_SQL=5D_Czy_mo=BFna_wywo=B3a=E6_funkcje_t ylko_raz_dla?==?iso-8859-2?Q?_ca=B3ego_zbioru_=BCr=F3d=B3owego=3F?=
[MSSQL] =?ISO-8859-2?Q?zgodno=B6ci_z_licencjami_Microsoft_?==?ISO-8859-2?Q?SQL_Server?=
=?ISO-8859-2?Q?k=B3opot_z_uruchomieniem_MY_SQL_dla_C?==?ISO-8859-2?Q?MS_i_CRM_na_Fedora_Core_3?=
Oracle PL/SQL Wstawianie =?ISO-8859-2?Q?wynik=F3w_kolekcji_d?==?ISO-8859-2?Q?o_tabeli?=
[MSSQL] ACCESS - SQL =?ISO-8859-2?Q?B=B3ad_w_konwersji_lic?==?ISO-8859-2?Q?zb?=
=?iso-8859-2?Q?=5Bmssql=5D_Zapytania_rekurencyjne__-_czy_sk=B3adnia_sql?==?iso-8859-2?Q?_co=B6_takiego_przewiduje_=3F?=
[Oracle PL/SQL] Cursor i zapis =?ISO-8859-2?Q?rekord=F3w_do_?==?ISO-8859-2?Q?kolejnych_plik=F3w?=
=?iso-8859-2?Q?=5BMySQL=5D_Co_minimalnie_potrzebne_zeby_mie=E 6_klienta_My?==?iso-8859-2?Q?SQL_na_Linuxie=3F?=
zanotowane.pldoc.pisz.plpdf.pisz.pllatwa-kasiora.pev.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 |
|