select z union

0

Witam,

zrobię sobie złacznie wierszy przy pomocy union

select osoba,wartosc from t1
union
select osoba,wartosc from t2

czy jest mozliwosc zadania zapytania do powyższego zlaczenia tak aby wybrac maksymalna wartosc?

0

tak

0

Nigdy czegoś takiego nie próbowałem ale można pokombinować zrób coś takiego

select max(select osoba,wartosc from t1
union
select osoba,wartosc from t2)

0

maksymalna wartosc tego zlaczenia otrzymasz tak:
SELECT MAX(wartosc)
FROM
(SELECT osoba, wartosc FROM t1
UNION
SELECT osoba, wartosc FROM t2);

jesli chcesz tez osobe oprocz najwiekszej wartosci to:
SELECT osoba, wartosc
FROM (SELECT osoba, wartosc FROM t1 UNION SELECT osoba, wartosc FROM t2)
WHERE wartosc =
(SELECT MAX(wartosc)
FROM SELECT osoba, wartosc FROM t1
UNION
SELECT osoba, wartosc FROM t2);

albo prosciej:
CREATE VIEW v1 as
SELECT osoba, wartosc FROM t1
UNION
SELECT osoba, wartosc FROM t2;

SELECT osoba, wartosc
FROM v1
WHERE wartosc = (SELECT MAX(wartosc) FROM v1);

0

@piorex1986,aigimig: nie pytal jak tylko czy mozna :)
@aigimig: co do drugiego nie latwiej posortowac i z limit wybrac ... tu mamy dodatkowe zapytanie w where
@szeryf_tu_byl: zadawaj bardziej konkretne pytania

0

no tak masz racje, z limit bedzie jeszcze latwiej

0

jesli juz szukacie jakiegos max'a to
UNION ALL

1 użytkowników online, w tym zalogowanych: 0, gości: 1