Changes between Version 1 and Version 2 of UseCase009Implemented
- Timestamp:
- 08/06/26 21:18:16 (45 hours ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
UseCase009Implemented
v1 v2 22 22 {{{ 23 23 SELECT me.title, 24 ac.role, 25 me.genre 24 me.genre, 25 c.contribution_order, 26 STRING_AGG(r.name, ', ' ORDER BY r.name) AS roles 26 27 FROM Artists a 27 28 JOIN Non_admin_users nau on a.user_id=8 and nau.user_id=8 28 29 JOIN Users u on u.user_id=nau.user_id 29 JOIN Artist_contributions ac on ac.artist_id=830 JOIN Musical_entities me on me.id= ac.musical_entity_id31 ORDER BY32 CASE33 WHEN ac.role='MAIN_VOCAL' THEN 034 ELSE 135 END30 JOIN Contributions c on c.artist_id=8 31 JOIN Musical_entities me on me.id=c.musical_entity_id 32 JOIN Contribution_roles cr on cr.musical_entity_id=c.musical_entity_id 33 and cr.artist_id=c.artist_id 34 JOIN Roles r on r.role_id=cr.role_id 35 GROUP BY me.id, me.title, me.genre, me.release_date, c.contribution_order 36 ORDER BY c.contribution_order, me.release_date DESC 36 37 }}} 37 38 39 38 40 На профилната страна се прикажуваат бројот на следбеници, бројот на корисници кои артистот ги 39 следи, како и неговите објавени песни. Прво оние каде е главен вокал, а потоа сите останати. 41 следи, како и неговите објавени песни/албуми. Записите каде артистот е носител на делото, т.е. contribution_order=1, се прикажуваат први, а потоа следат сите останати 42 подредени по нивниот contribution_order. 40 43 41 * Даденото сценарио ги прикажува прашалниците кои би се извршиле доколку главниот актер има ID=8.42 44 43 45 === Чекор 2 … … 49 51 VALUES 50 52 (22, 'Album1','X','2026-01-01',8); 51 52 53 }}} 53 54 … … 56 57 }}} 57 58 59 {{{ 60 -- за албумот и за секоја песна одделно се запишува придонесот, како и улогата која ја имал артистот 61 INSERT INTO Contributions (musical_entity_id, artist_id, contribution_order) 62 VALUES (22, 8, 1); 63 }}} 64 65 {{{ 66 INSERT INTO Contribution_roles (musical_entity_id, artist_id, role_id) 67 VALUES (22, 8, 1); 68 }}} 58 69 59 70 {{{ … … 68 79 INSERT INTO Songs (id, album_id, link) 69 80 VALUES (23,22,'example.com'); 70 71 81 }}} 72 82 73 Прво се додава албумот, а потоа сите песни кои се дел од албумот. 83 {{{ 84 85 INSERT INTO Contributions (musical_entity_id, artist_id, contribution_order) 86 VALUES (23, 8, 1); 87 }}} 88 89 {{{ 90 INSERT INTO Contribution_roles (musical_entity_id, artist_id, role_id) 91 VALUES (23, 8, 1); 92 }}} 74 93 75 94 95 === Чекор 3 (опционално - дополнителни придонесувачи) 76 96 77 97 98 {{{ 99 -- пример: featured артист со ID=15 се додава како втор придонесувач на песната 100 INSERT INTO Contributions (musical_entity_id, artist_id, contribution_order) 101 VALUES (23, 15, 2); 102 }}} 78 103 104 {{{ 105 INSERT INTO Contribution_roles (musical_entity_id, artist_id, role_id) 106 VALUES (23, 15, (SELECT role_id FROM Roles WHERE name='Featured Artist')); 107 }}}
