|
TwojePC.pl © 2001 - 2025
|
 |
A R C H I W A L N A W I A D O M O Ś Ć |
 |
| |
|
[BAZY DANYCH] Jak zbudować zapytanie które dane z kilku kolumn wybierze w jedną kolumne? , john565 15/02/06 20:51 Mam następujące pytanie
załóżmy że jest sobie tabela TEST o polach ID, A, B, C i D
ID A B C D
1 6 7 8 0
2 9 4 2 1
i teraz chodzi mi o zbudowanie jakiegoś zapytania (kilku zapytań ?) bez kursorów i innych dziwactw, coś na kształt
SECLECT {to czego szukam} AS 'w' FROM TEST;
da wynik
w
6
7
8
0
9
4
2
1f*ck - hmm select union? , waski 15/02/06 21:06
mysle ze daloby rade...
select A from TEST as w UNION
select B from TEST as w UNION
select C from TEST as w UNION
select D from TEST as w
dodaj ALL jesli chcesz miec duplikaty
http://www.really-fine.com/SQL_union.htmlSNAFU
Situation Normal, All Fucked Up - tak to jest to ale coś i nie wychodzi zbudowaniw zapytania, a niby wsztrko jest ok HELP! , john565 15/02/06 21:32
(SELECT a AS wyn FROM wyniki)
UNION ALL
(SELECT b AS wyn FROM wyniki);
#1064 - Something is wrong in your syntax obok '(SELECT a AS wyn FROM wyniki)
UNION ALL
(SELECT b AS wyn FROM ' w linii 1
podczas gdy
SELECT a AS wyn FROM wynikif*ck - ... , john565 15/02/06 21:32
ucieło
...podczas gdy
SELECT a AS wyn FROM wyniki
zwraca bez zająknięcia to co jest w zapytaniuf*ck - a nie masz bledu.... , rulezDC 15/02/06 21:47
ze podstawiasz znowu cos pod nazwe wynkoniec koniec koniec - no wydaje sie że nie, sugerowałems ie awet oficjalna stronką od mysqla , john565 15/02/06 21:51
http://dev.mysql.com/doc/refman/5.0/en/union.html
pozatym zalezy mi natym żeby to jednak było w jednej kolimnie, pozatym sprawdzałem wszelkie inne rekonfiguracje nawiasó i to też nei daje efektuf*ck - soorka za literówki , john565 15/02/06 21:51
jestem padnięty po całym dniuf*ck
- hmm , celt 15/02/06 22:58
select a as w from testcol
union all
select b as w from testcol
union all
select c as w from testcol
union all
select d as w from testcol;
PS. po co te nawiasy? Blad taki jak opisales moze wystapic w sytuacji gdy np. w pierwszym z selectow dales nawiasy w drugim pominelesEverything should be made as simple as
possible, but no simpler - a nie masz czasem źle zaprojektowanej tabeli? , zozol 15/02/06 23:05
czy te dane nie powinny byc czasem w jednej kolumnie, skoro chcesz je traktować jako dane tego samego typu? napisz co te kolumny znaczą- dokladnie , celt 15/02/06 23:17
to zapytanie, jest wg mnie pozbawine sensu :)Everything should be made as simple as
possible, but no simpler - o tym może decydować jedynie , john565 16/02/06 01:05
projektant tabeli, lub ktoś kto ma ją obcykaną na blache, nie uważasz ?f*ck - pfu, bazy miało być , john565 16/02/06 01:05
eh to zmęcznie :]f*ck
- tabela jest taka jak być powinna , john565 16/02/06 01:04
każde z pól zawiera wynik rzucenia kostką, czyli 1-6, pola są od a do f, kolejnośc jest ważna , a zapytanie owe chem użyć do znalezienia ile razy podczas wszytkich rzuceń wypadła określona liczba oczek , mógłbym to zrobić przy pomocy jednego zapytania i kilku selectów into, ale właśnie szukam dla zaspokojenia własnej ciekawości jak by to tu zorbić zagnieżdżaonym selectem doczego są mi potrzebne własnie wszytskie wyniki wjednej kolumnie :]f*ck - jak dla mnie to zle zaprojektowana tabela , Holyboy 16/02/06 08:32
id, literka, wynik
do tego zakladasz klucz na id-literka i masz to co chceszStrength is irrelevant.
Resistance is futile.
We wish to improve ourselves. - zgadzam się. , beef 16/02/06 09:04
jak chcesz pogrupować np seriami, to dodajesz SeriesId i już. ŻELAZNA zasada: jeden typ danych (logiczny, nie fizyczny) = jedna kolumna. I nigdy inaczej. A dlaczego, to już wiesz :) Nie grupuje się jednakowych danych rekordami po prostu, to nie po to one są.this is the time of the revolution
keepin' it in the right track
feelin' it in my mind back - no oki chyle czoła ALE DLACZEGO SIE NIE DA TEGO UNIONA ZROBIĆ ??? , john565 16/02/06 11:03
bo chyba powinno sie daćf*ck
- to nie lepiej , celt 16/02/06 10:52
napisać jakiś prosty programik?Everything should be made as simple as
possible, but no simpler
- powodow ze nie dziala moze byc kilka... , josh 16/02/06 23:11
...wszystko zalezy od konkretnej bazy danych. SQL-SQL'em, a kazda baza i tak zachowuje sie specyficznie w roznych nietypowych sytuacjach...
Jak mam strzelac to problemem moze byc np to, ze jak czasami jak robi sie select'y z unionem to tylko w pierwszym selekcie definiuje sie nazwy kolumn. Mozesz wiec sprobowac tak:
select a as w from testcol
union all
select b from testcol
union all
select c from testcol
union all
select d from testcol;
Moze byc tez inny problem, np. taki, ze kazdy select w unionie musi operowac na innej tabeli. Mozesz wiec sprobowac tak:
select t1.a as w from testcol t1
union all
select t2.b as w from testcol t2
union all
select t3.c as w from testcol t3
union all
select t4.d as w from testcol t4;
Moze trzeba by polaczyc obydwa podane przeze mnie pomysly w jedna calosc... a moze sie myle i to, co pisze nie ma sensu :) |
|
|
|
 |
All rights reserved ® Copyright and Design 2001-2025, TwojePC.PL |
 |
|
|
|