wiki:querries

Version 2 (modified by 221046, 2 days ago) ( diff )

--

Име SQL Query Поголемо објаснување
Пребарување албумиAlbum.objects.filter(titleicontains=search_track).values_list('title', flat=True) Пребарува албуми кои содржат текст во насловот, враќајќи листа на наслови.
Сите албумиAlbum.objects.all().values_list('title', flat=True) Враќа листа на сите албуми со нивните наслови.
Пребарување траковиTrack.objects.filter(nameicontains=search_track).values_list('name', flat=True) Пребарува тракови кои содржат текст во името, враќајќи листа на имиња.
Сите траковиTrack.objects.all().values_list('name', flat=True) Враќа листа на сите тракови со нивните имиња.
Пребарување артистиArtist.objects.filter(nameicontains=search_track).values_list('name', flat=True) Пребарува артисти кои содржат текст во името, враќајќи листа на имиња.
Сите артистиArtist.objects.all().values_list('name', flat=True) Враќа листа на сите артисти со нивните имиња.
Број тракови по жанрcursor.execute("SELECT * FROM track_count_per_genre;") Земa број на тракови по жанр од претходно дефинирана view.
Просечно времетраење по артистcursor.execute("SELECT * FROM avg_track_duration_per_artist;") Земa просечно времетраење на тракови по артист од view.
Најактивни кориснициcursor.execute("SELECT * FROM rank_list_most_active_customers_view;") Враќа рангирана листа на најактивни корисници од view.
Просечна цена по артистcursor.execute("SELECT * FROM avg_price_per_artist;") Земa просечна цена по трак за секој артист од view.
Рангирана листа на артистиcursor.execute("SELECT * FROM rank_list_artists;") Враќа рангирана листа на артисти според број на фактури и заработка од view.
Процент медиумски типcursor.execute("SELECT * FROM media_type_percentage;") Земa процентуална застапеност на секој медиумски тип од view.
Омилен жанр по корисникcursor.execute("SELECT * FROM most_listened_genre_per_customer;") Враќа омилен жанр за секој корисник од view.
Број на тракови по жанр за корисникcursor.execute(query, [selected_customer_id]) (genres_per_customer) Пребарува и брои колку тракови од секој жанр купил/слушал избран корисник, користејќи JOIN меѓу customer, invoice, invoice_line, track и genre.
Најпопуларен артист по жанр за корисникcursor.execute(query, [selected_customer_id]) (most_popular_artist_per_customer_per_genre) Наоѓа кој артист е најпопуларен во секој жанр за избраниот корисник. Се користи CTE (PlayCounts и MaxPlayCounts) за броење на секој жанр и идентификување на највисок број на преслушувања.
Фактури по корисник по датумcursor.execute(query, [selected_customer_id, selected_date]) (invoice_per_customer_after_date) Земa фактури за даден корисник, можност за филтрирање по датум, и пресметува вкупна сума. Ако не е зададен датум, враќа сите фактури на корисникот.
Масовно ажурирање на надредениcursor.execute("SELECT batch_update_reports_to(%s::json);", [json_data]) Ажурира поле reports_to за повеќе вработени одеднаш, користејќи JSON список со employee_id и reports_to_id.
Додавање тракови во плейлистаcursor.execute("SELECT add_tracks_to_playlist(%s, %s::json);", [selected_playlist_id, json_data]) Додава повеќе тракови во избрана плейлиста со JSON список на track_id преку PL/pgSQL функција.
Додавање линии на фактураcursor.execute("SELECT add_invoice_lines_to_existing_invoice(%s, %s::json);", [selected_invoice_id, json_data]) Додава линии на постоечка фактура со JSON список на track_id и quantity преку PL/pgSQL функција.

Attachments (3)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.