• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

SQL polecenie group by dla kolumn z tekstem

VPS Starter Arubacloud
0 głosów
181 wizyt
pytanie zadane 6 grudnia 2018 w SQL, bazy danych przez k222 Nałogowiec (30,150 p.)
Cześć, gdy używam polecenia group by w SQLu, to grupuje mi ono dane po danej kolumnie, dla reszty kolumn, aby były wyświetlane poprawnie trzeba użyć poleceń avg, sum, min, max... co ma sens dla liczb, bo jak już grupujemy, to pewnie po to, aby coś z tymi liczbami zrobić.

Mam jednak pytanie, odnośnie takiej sytuacji:

Mam tabelę: ID, imię, nazwisko, numer_zamówienia, numer_zamówionego_produktu (każde zamówienie może mieć kilka produktów), koszt produktu - grupuję ją po numerze zamówienia i obliczam sobie sumę kosztu. Chciałbym jednam mieć także ID, imię i nazwisko wypisane, jednak one się powtarzają. Czy jest jakieś lepszy / bardziej przejrzysty i naturalny sposób na zrobienie tego niż napisanie:
min(ID), min(imie), min(nazwisko) ?

Wiem, że użycie min czy max zadziała i będzie poprawne, bo dla danego numeru zamówienia dla wszystkich zamówionych produktów te dane są identyczne, jednak min kojarzy się z operacjami na liczbach, a nie z wybieraniem słowa.

Próbowałem kombinować z select distinct, ale bez sukcesu.

Da się więc inaczej, czy po prostu używać min / max i już?
komentarz 6 grudnia 2018 przez k222 Nałogowiec (30,150 p.)

Rzeczywiście, działa i wygląda o niebo lepiej niż pisanie minimów dla imienia - czegoś takiego szukałem. Dzięki laugh

1
komentarz 6 grudnia 2018 przez mbabane Szeryf (79,280 p.)
Dałem jako odp, żeby było elegancko.

1 odpowiedź

+1 głos
odpowiedź 6 grudnia 2018 przez mbabane Szeryf (79,280 p.)
wybrane 6 grudnia 2018 przez k222
 
Najlepsza

Zdaje się że tak:

select id, count(costam), imie, nazwisko
from tbl
 
group by costam, id, imie, nazwisko

Podobne pytania

+1 głos
2 odpowiedzi 558 wizyt
pytanie zadane 21 marca 2021 w SQL, bazy danych przez Paweł123 Nałogowiec (33,500 p.)
0 głosów
2 odpowiedzi 589 wizyt
pytanie zadane 1 grudnia 2018 w SQL, bazy danych przez hiper007 Stary wyjadacz (11,270 p.)
0 głosów
2 odpowiedzi 760 wizyt
pytanie zadane 27 listopada 2017 w SQL, bazy danych przez 123skiper Bywalec (2,170 p.)

92,452 zapytań

141,262 odpowiedzi

319,085 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...