Smakoszem ani znawcą nie jestem, dlatego pytam Was. Znacie jakieś podobne piwka ? Ostatnio na urlopie wypiłem właśnie tego Żywca i mega mi siedzi. Lekki i przyjemny smak.
#kiciochpyta #piwo
#kiciochpyta #piwo
![patryczaki - Smakoszem ani znawcą nie jestem, dlatego pytam Was. Znacie jakieś podobn...](https://wykop.pl/cdn/c3201142/comment_PXkpca66TIH7lrYrPfInldZc12bcIaTi,w400.jpg)
źródło: comment_PXkpca66TIH7lrYrPfInldZc12bcIaTi.jpg
Pobierz
Np. jest tabela która zawiera id (number), jakąś datę i inne dane.
Jak najlepiej wyciągnąć tylko pierwszy rekord zwracany przez zapytanie
Select * order by jakas_data desc, id desc ?
Zależy mi na jak największej wydajności.
#oracle #sql #plsql #bazydanych
Jeśli nie masz żadnych innych wymagań odnośnie zwracanych danych, a chcesz największą wartość jednej z kolumn to max() będzie najbardziej wydajny jako wbudowana funkcja silnika. Nie ma co kombinować z czymś innym.
W ostatecznosci mozesz dorzucić DISTINCT jeśli odpytywana kolumna może zwrócić wiele wierszy, czyli SELECT MAX(DISTINCT column_1) FROM ORDERS;
Nie polecam opcji z podzapytaniem wykorzystujacym sortowaniem, bo wtedy i tak silnik musi odczytać i wrzucić do pamięci całą tabele
AD.1 Wybacz, przeoczyłem to :)
AD.2 Wydawało mi się, że na Postgresie pomimo używania MAX(), jeśli masz wiele wartości takich samych (np. ta sama data), na kolumnie na której jej używasz to zwróci Ci wszystkie wiersze z tą wartością. Szybkie sprawdzenie dokumentacji Postgresa i jednak tak sie nie dzieje - DISCTINCT nie potrzebny. Zwracam honor po raz drugi, nie bawiłem się dużo w Postgresie.
AD3. Dokładnie o tym pisałem. W
źródło: comment_c5XV5lLscIEBnvuu5F5v2wk7VU4cixbl.jpg
PobierzEhhh. Słaby jestem w wykopy, nie ogarnąłem poprawnie załącznika. Tutaj, chyba lepiej.
źródło: comment_syY1twiWB4AAP0uGAJpSQ9G9w4ax5QS1.jpg
Pobierz