galeria zdjec - numerowanie zdjec
Oglądasz archiwalną wersję tematu "galeria zdjec - numerowanie zdjec" z forum pl.comp.bazy-danych
sd
witam

mam tabele zdjecia: zdjecie_id | galeria_id | nazwa

wyswietlam teraz galerie - wszystkie zdjecia z galeria_id = 4
sortuje wg zdjecie_id (ASC)

teraz chce wyswietlic 'ktore zdjecie w galerii' na 'ile zdjec w galerii'

sume zdjec w galerii policzylem, a jak policzyc ktore to jest zdjecie w
galerii biorac pod uwage waunki podane powyzej?

ma ktos pomysl na zapytanie?

pozdrawiam

Paweł Matejski

witam

mam tabele zdjecia: zdjecie_id | galeria_id | nazwa

wyswietlam teraz galerie - wszystkie zdjecia z galeria_id = 4
sortuje wg zdjecie_id (ASC)

teraz chce wyswietlic 'ktore zdjecie w galerii' na 'ile zdjec w galerii'

sume zdjec w galerii policzylem, a jak policzyc ktore to jest zdjecie w
galerii biorac pod uwage waunki podane powyzej?

ma ktos pomysl na zapytanie?


Najłatwiej przy fetchowaniu rekordów liczyć (uniwersalne dla wszystkich baz).
Mysql obsługuje zmienne w zapytaniach, wiec możesz i w zapytaniu to zrobić.

sd

Najłatwiej przy fetchowaniu rekordów liczyć (uniwersalne dla wszystkich baz).
Mysql obsługuje zmienne w zapytaniach, wiec możesz i w zapytaniu to zrobić.



danych pojedynczego zdjecia

hmm ale jak taka funkcja powinna wygladac?

sd
znowu sobie sam odpisze, zapytam czy tak moze byc

SELECT count(*) as ktory, (select count(*) from zdjecie where galeria_id
= 7) as ile FROM zdjecie WHERE galeria_id = 7 AND zdjecie_id <= 9;

Maciek Dobrzanski

SELECT count(*) as ktory, (select count(*) from zdjecie where galeria_id =
7) as ile FROM zdjecie WHERE galeria_id = 7 AND zdjecie_id <= 9;


Ech, napewno nie. Możesz trzymać kolumnę, która będzie zawierała kolejny
numer zdjęcia w galerii, ewentualnie wraz z unikalnym kluczem na parę
(galeria_id, zdjecie_nr), ale być może to zbędny koszt. Stosunek operacji
dodania/usunięcia zdjęcia do wyświetleń jest zapewne znikomy, więc nawet
przenumerowywanie w przypadku takich operacji może być lepszym pomysłem niż

Ewentualnie numer zdjęcia możesz poprostu uniezależnić od bazy danych,
przenieść go do aplikacji, pobierać zdjęcie o zadanym przesunięciu względem
początku listy utworzonej według wybranej kolejności, np.
SELECT ... FROM zdjecie WHERE galeria_id = N ORDER BY zdjecie_id ASC LIMIT 1
OFFSET M, gdzie N to identyfikator galerii, M to przesunięcie (0 <= M <
liczba zdjęć w galeria_id).

Itp.

Maciek

sd

Ech, napewno nie. Możesz trzymać kolumnę, która będzie zawierała kolejny
numer zdjęcia w galerii, ewentualnie wraz z unikalnym kluczem na parę
(galeria_id, zdjecie_nr), ale być może to zbędny koszt. Stosunek
operacji dodania/usunięcia zdjęcia do wyświetleń jest zapewne znikomy,
więc nawet przenumerowywanie w przypadku takich operacji może być


ale czemu nie to moje rozwiazanie?
bo nie dziala czy dlatego ze za bardzo obciaza baze?
przy jakiej ilosci danych w tabeli zdjecie bede widzial ze to zapytanie
jest toporne?

Menel

witam

mam tabele zdjecia: zdjecie_id | galeria_id | nazwa


 a może PRIMARY KEY oparty na 2 kolumnach?
Pozdr.

Maciek Dobrzanski

bo nie dziala czy dlatego ze za bardzo obciaza baze?


Działać może i działa, natomiast napewno nieefektywnie wykorzystuje zasoby.
Po pierwsze zmuszasz bazę do analizy i optymalizacji dwóch zapytań, po
drugie przeglądają one te same dane wielokrotnie, choć zupełnie nie jest to
potrzebne.

przy jakiej ilosci danych w tabeli zdjecie bede widzial ze to zapytanie
jest toporne?


Trudno powiedzieć. Może nie ma takiej sytuacji, w której to odczujesz. To
zależy od wielu czynników związanych np. ze strukturą tabel, konfiguracją
bazy czy obciążeniem samego systemu. Natomiast podejście na "czuja" jest
niewłaściwe. Projektując bazę danych powinien interesować Cię przede
wszystkim koszt wyrażany konkretnymi liczbami, wrażenie użytkownika to
kwestia pochodna, często bardzo mylna (tj. na przykład coś "robi" szybko,
ale cichaczem pod spodem za każdym razem wykorzystanie CPU leci na 100%).

Maciek

sd

Trudno powiedzieć. Może nie ma takiej sytuacji, w której to odczujesz.
To zależy od wielu czynników związanych np. ze strukturą tabel,
konfiguracją bazy czy obciążeniem samego systemu. Natomiast podejście na
"czuja" jest niewłaściwe. Projektując bazę danych powinien interesować
Cię przede wszystkim koszt wyrażany konkretnymi liczbami, wrażenie
użytkownika to kwestia pochodna, często bardzo mylna (tj. na przykład
coś "robi" szybko, ale cichaczem pod spodem za każdym razem
wykorzystanie CPU leci na 100%).


masz racje, ten bajer wlasciwie wymyslilem pozniej, przy projektowaniu
bazy nie zakladalem ze bede takie informacje prezentowal, chcialem w
latwy sposob dodac taki bajer.
ale poswiecilem kilka minut i dorobilem kolumne kolejnosc i wlasnie z
niej pobierana jest ta informacja i wg danych z tej kolumny sortowane sa
zdjecia.

dzieki za mobilizacje:)
pozdrawiam

jakie pole ustawic pole w bazie by bylo automatycznie numerowane ?
numerowanie wierszy według danej wartości
VFP - numerowanie wierszy na raporcie
numerowanie wierszy w tabeli
galeria zdjęć
kody kreskowe EAN13
T-sql: null i zminna lokalna
  • zdjecie zlotej nokii 7360
  • bmw 316 schemat
  • rasy psow cips
  • slaskie godanie0D0A0909090D0A09090909slaski vkp o 3540
  • strona 64800
  • in vitro w czechach
  • leak your prescriber or healthiness feel
  • zegarek na stronie
  • biografia cerekwickiej
  • Zestawienie wypowiedzi z for dyskusyjnych • Index