Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 73 Pomógł: 4 Dołączył: 13.01.2004 Skąd: Bielsko-Biała Ostrzeżenie: (0%)
|
witam jak w temacie potrzebuje pobrać ostatni rekord z tablicy
tablica to innodb z około 1k rekordów (w tym przypadku mała ale i prosta - mam też parę innych tabel gdzie jest więcej rekordów i ten sam problem)
problem: polecany wszędzie sposób pobierania ostatniego rekordu:
czyli żebym otrzymał wynik - musi przeskanować cała tablice... inny sposób:
nie wiem czy lepiej bo nie do końca rozumiem tą drugą linijke:) ale przynajmniej z pierwszej wynika że tylko 1 wiersz skanuje - ten poprawny opcja 3 to przechowywanie w tempie id ostatniego wiersza (jest on dodawany raz dziennie wiec w tym przypadku to nie jest problem) :
którą drogą powinienem iść? (zakładam że 1 mogę pominąć, więc jest 2 którą pod względem optymalności nie do końca rozumiem, lub 3 - dla której cachowanie trzeba by dopisac) czy może są lepsze metody? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Moderatorzy Postów: 36 561 Pomógł: 6315 Dołączył: 27.12.2004 |
Cytat Ja tylko stwierdzam że nie musi być klucza głównego jak nie jest potrzebny. To jest tylko ładniej napisane "g.prawda" (IMG:style_emoticons/default/smile.gif) Zacytuję ci odpowiedż jaką ci dałem na "g.prawda" Cytat Wiem, że bez klucza głównego tabela może "żyć". Jednak dla własnego dobra, nawet jesli w danej chwili go nie widzisz, dobrze jest by klucz główny był. I mówię ci to na podstawie zawodowego doświadczenia (IMG:style_emoticons/default/smile.gif) Też czasem nie używam klucza głównego, zdarza się to sporadycznie i tylko wówczas gdy naprawdę, naprawdę, naprawdę nie jest konieczne (IMG:style_emoticons/default/smile.gif) edit: po przeczytaniu tego wszystkiego jeszcze raz po części się z tobą zgodzę. Źle to napisałem Powinienem był napisać "W większości przypadków powinien być zawsze" (tak miałem w domyśle - mój błąd).Większość używanych przez nas tabel powinna mieć klucz główny. Oczywiście zdarzają się odstępstwa gdzie ten klucz niczemu służyć nie będzie. Twoja cudna argumentacja "g.prawda" niestety zadziałała na mnie jak płachta na byka. Twoje ostatnie zdanie już jest "lepiej" sformułowane i "zmusiło" mnie do ponownego przetrawienia treści (IMG:style_emoticons/default/winksmiley.jpg) |
|
|
|
ChrisB ostatni rekord z tablicy - problem z optymalizacją 28.08.2010, 23:48:27
cojack Jeżeli Ci się chce to dopisz ten cache, jeżeli nie... 29.08.2010, 08:41:44
ChrisB nie mam się co przejmować że robi mi full table sc... 29.08.2010, 11:26:42
cojack 2 sposób nie robi nic innego, albo w mysql wyszuka... 30.08.2010, 08:01:15
nospor Po pierwsze: skoro chcesz pobrać ostatni rekord to... 30.08.2010, 08:58:00
ChrisB to już taki detal:P tak na marginesie wyciagajac p... 30.08.2010, 09:38:47
nospor Kurde, dziwne... No mam indentczyną sytuację, z ty... 30.08.2010, 09:47:45
ChrisB może coś źle robię z indexami... już ogolnie ręce ... 30.08.2010, 09:54:30
nospor struktura jest ok. Wstawiłem ją do siebie i lata p... 30.08.2010, 09:58:03
ChrisB i nie jest to jedyny problem z indexami jaki mam;/... 30.08.2010, 10:07:58
nospor Powiem jak ja to robię:
klucz główny w postaci ID ... 30.08.2010, 10:14:55
ChrisB jak usuwam to albo dla danego użytkownika (po id_u... 30.08.2010, 11:17:37
cojack CytatKlucz główny powinien być zawsze.
g. prawda. 30.08.2010, 14:42:33
nospor @cojak nadwyraz rzeczowa argumentacja
Wiem, że be... 30.08.2010, 18:43:56
cojack Złączenia naturalne:
http://bobo.fuw.edu.pl/DB/OL... 30.08.2010, 20:56:08
nospor @cojak nie wiem co chciałeś pokazać tym linkiem, a... 31.08.2010, 06:13:03
cojack Nospor no przecież wytłuściłem Ci o czym masz czyt... 31.08.2010, 08:17:16
nospor CytatI tabela równie dobrze może posiadać parę jak... 31.08.2010, 08:21:22
cojack Ja tylko stwierdzam że nie musi być klucza główneg... 31.08.2010, 10:03:15
cojack To ja też przepraszam, za swoje słownictwo ;/ 31.08.2010, 12:55:17 ![]() ![]() |
|
Aktualny czas: 29.12.2025 - 00:37 |