-- ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π°Π»ΠΈΡΠΈΠ΅ ΡΠΎΠ²Π°ΡΠΎΠ² ΠΏΠΎ ΡΠ°Π·Π΄Π΅Π»Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°
CREATE OR REPLACE VIEW view_products_in_catalog
as
SELECT c.catalog_id, p.name, st.quantity as count_prod, c.name as name_catalog
FROM
products p
join
catalog_subdivision cs
join
catalogs c
join
storehouse st
on
p.catalog_sub_id = cs.catalog_subdivision_id and cs.catalog_id = c.catalog_id and p.id = st.product_id
-- ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΠ²Π°ΡΠΎΠ² Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ ΠΠ΄Π΅ΠΆΠ΄Π°
SELECT * FROM view_products_in_catalog
where catalog_id = 2
-- ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ ΠΏΠΎΠΊΡΠΏΠΎΠΊ ΠΏΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΈ ΡΠΎΡΡΠΈΡΡΠ΅Ρ ΠΏΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ Π·Π°ΠΊΠ°Π·ΠΎΠ²
CREATE or REPLACE VIEW view_user_activ
as
SELECT CONCAT(u.firstname, ' ', u.lastname) as us, COUNT(o.order_id) as cnt
FROM
users u
join
orders o
on
u.id = o.user_id
GROUP by us
ORDER by cnt desc
-- ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ ΠΏΠΎΠΊΡΠΏΠΎΠΊ
select * FROM view_user_activ
-- ΠΏΡΠΈΠΌΠ΅Ρ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°, Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΅Π³ΠΎ ΠΏΠΎΠ» ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΡΠ·ΡΠ²ΠΎΠ²
SELECT
id,
lastname,
(SELECT gender from profiles where user_id = users.id) as gend,
(SELECT count(*) from feedback where user_id = id) as cnt
FROM
users
order by cnt desc