Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> W jaki sposób wybrać dane z jednej tabeli i wsadzić je do innej
pasTerzu
post 19.07.2006, 16:52:17
Post #1





Grupa: Zarejestrowani
Postów: 34
Pomógł: 0
Dołączył: 25.08.2005

Ostrzeżenie: (0%)
-----


Potrzebuje wybrać rekordy spełniające jakieś kryteria z jednej tabeli i wpisać je do drugiej tabeli. Udało mi się zrobić to w oparciu o tablice - czy da się to zrobić z pominięciem tablic ?


--------------------
nie wierz w cuda ... zdaj się na nie ...
Go to the top of the page
+Quote Post
wlq
post 19.07.2006, 17:04:59
Post #2





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 5.07.2006

Ostrzeżenie: (0%)
-----


poszukaj na:
http://dev.mysql.com/doc/refman/5.0/en/update.html
http://dev.mysql.com/doc/refman/5.0/en/join.html


zwroc uwage na zastosowanie "join"

Ten post edytował wlq 19.07.2006, 17:25:24
Go to the top of the page
+Quote Post
Adiasz
post 19.07.2006, 17:15:11
Post #3





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 28.02.2004

Ostrzeżenie: (0%)
-----


chyba chodzi o:
INSERT INTO
SELECT INTO
Go to the top of the page
+Quote Post
interjaz
post 24.07.2006, 13:00:43
Post #4





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 25.01.2005

Ostrzeżenie: (0%)
-----


INSERT INTO VALUES ((SELECT ...)

post traktowany jako nabicie postow. a niby co adiasz napisal post wyzej? nawet z linkami /~nospor/
Go to the top of the page
+Quote Post
Jabol
post 24.07.2006, 13:07:15
Post #5





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


Coś zupełnie innego Panie nospor. Sposoby zaproponowane przez Adiasza to zupełnie inne sposoby niż interjaza. Trzeba czytać - uważnie, Panie nospor.
Go to the top of the page
+Quote Post
nospor
post 24.07.2006, 13:14:40
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




blink.gif
Panie Jabol, wejdź Pan do linka co podal Adiasz i co tam mamy:
Cytat
INSERT [LOW_PRIORITY | HIGH_PRIORITY] [IGNORE]
[INTO] tbl_name [(col_name,...)]
SELECT ...
[ ON DUPLICATE KEY UPDATE col_name=expr, ... ]


Teraz to co napisal interjaz:
Cytat
INSERT INTO VALUES ((SELECT ...)


Jedyna roznica to taka, ze adiasz podal linka gdzie to wszystko opisane, a interjaz dowalil cos, czego potem samemu trzeba szukac. Adiasz podal wszystko jak na tacy, nie trzeba biegac po manualu i zastanawiac sie oco chodzi, czego nie da sie uniknac przy skrócnej wersji interjaz'a. A tak patrzac uwaznie to wogole wersja interjaza wydaje sie bledna, bo nawet nie pasuje to zadnego wzoru insert into.

edit: i co zes z tym Panem wyjechal? Ja to podtrzymalem bo rozumiem ze to taka zabawa? Kto jak kto, ale ty powinienes wiedziec ze na forum nie odnosimy sie do siebie per Pan, chyba ze... no wlasnie, chyba ze co?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Jabol
post 24.07.2006, 14:36:47
Post #7





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


Nie zabawa, a wersja hmmm... chciałem zabrzmieć mocno, a jako że nie mam tutaj autorytetu musiałem użyć innego sposobu.
Natomiast wciąż utrzymuje że to dwie inne wersje.
Z punktu widzenia sql'a na pewno inne, ale może dla Ciebie różnica nawiasów nie oznacza, że to dwa Zupełnie inne sposoby. Bo werjsa z manuala to wersja służąca do kopiowania danych z jednej tabeli do drugiej. A werjsa którą podał interjaz to zwykły insert z podzapytaniem - coś co tylko przez przypadek nadaje się do rozwiązania tego problemu. Tak więc pozostaje przy swoim zdaniu, że pomimo obie werjse robią to samo i są podobne, to z punktu widzenia sql'a są zupełnie różne.
Go to the top of the page
+Quote Post
nospor
post 24.07.2006, 14:43:13
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
A werjsa którą podał interjaz to zwykły insert z podzapytaniem
Sęk w tym, ze ja nigdzie nie moge znaleźć takiego zastosowania co podal interjaz. jako values nie mozesz uzyc podzapytania. tego nie ma w manualu ani w praktyce nie udalo mi sie tego osiągnąc. Na PW interjaz napisal mi, ze faktycznie nie czytal linkow co byly przed nim.
I jak napisalem wczesniej:
Cytat
A tak patrzac uwaznie to wogole wersja interjaza wydaje sie bledna, bo nawet nie pasuje to zadnego wzoru insert into.


Jesli jednak istnieje taka konstrukcja o ktorej mowisz, to prosze podaj mi dokladnie jej kod, link do manuala czy czegos tam. jestem otwarty na nową wiedzę smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Jabol
post 24.07.2006, 15:44:44
Post #9





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


No cóż - rzeczywiście masz rację. W ten sposób da się skopiować tylko jeden rekord.
Przyznaje, nie wiedziałem.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 23.06.2025 - 18:41