Changes between Version 10 and Version 11 of querries


Ignore:
Timestamp:
09/24/25 16:09:41 (13 days ago)
Author:
221046
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • querries

    v10 v11  
    3434= Релациона алгебра за прашалникот: Најпопуларен артист по жанр за корисник =
    3535
    36 !PlayCounts=γ g.genre_id,g.name→genre_name,ar.name→artist_name,COUNT(∗)→play_count(σ c.customer_id=123((customer⋈invoice)⋈(invoice_line⋈track)⋈(track⋈genre)⋈(track⋈album)⋈(album⋈artist)))
    3736
    38 !MaxPlayCounts=γgenre_id,MAX(play_count)→max_count​(!PlayCounts)
     37== 1. PlayCounts ==
     38Се пресметува бројот на плеј-стани за секој жанр и уметник за одреден клиент (со ID 123). Операциите што се користат се:
    3939
    40 Final_Result=π pc.genre_name,pc.artist_name,pc.play_count(!PlayCounts⋈pc.genre_id=mpc.genre_id∧pc.play_count=mpc.max_count !MaxPlayCounts)
     40- **Join**: Поврзување на сите потребни табли (customer, invoice, invoice_line, track, genre, album, artist) со операцијата `⋈`.
     41- **Selection (σ)**: Применуваме услов за селектирање само на податоци за клиент со ID 123.
     42- **Grouping (γ)**: Групираме по жанр и уметник и пресметуваме бројот на плеј-стани за секој пар жанр-уметник со функцијата COUNT.
    4143
     44Релационата алгебра за `PlayCounts`:
    4245
    43 πpc.genre_name,pc.artist_name,pc.play_count​((γg.genre_id,g.name→genre_name,ar.name→artist_name,COUNT(∗)→play_count​(σc.customer_id=123​((customer⋈invoice)⋈(invoice_line⋈track)⋈(track⋈genre)⋈(track⋈album)⋈(album⋈artist))))⋈pc.genre_id=mpc.genre_id∧pc.play_count=mpc.max_count​(γgenre_id,MAX(play_count)→max_count​(!PlayCounts))
     46PlayCounts = γ_{g.genre_id, g.name → genre_name, ar.name → artist_name, COUNT(*) → play_count} (σ_{c.customer_id = 123}((customer ⋈ invoice) ⋈ (invoice_line ⋈ track) ⋈ (track ⋈ genre) ⋈ (track ⋈ album) ⋈ (album ⋈ artist)))
    4447
    4548** ← [wiki: Назад на почетна] **