Расчет процента значений из массива 1 содержащихся в массиве 2

У меня есть таблица со следующей структурой:

client_id order_id items_current_order items_next_order
905562 4254677 {1, 2, 4} {1}
905562 4254645 {1, 2, 5, 6} {1, 6}
create table orders (
    client_id integer,
    order_id varchar(10),
    items_current_order varchar array, 
    items_next_order varchar array
  
);


INSERT INTO orders (client_id, order_id, items_current_order, items_next_order) 
VALUES (905562, '4254677', '{1, 2, 4}', '{1}'), 

(905562, '4254645', '{1, 2, 5, 6}', '{1,6}')

Мне нужно посчитать долю items из items_next_order содержащихся в items_current_order.

Так например для order_id = 4254645 доля должна быть 50%, так как только 2 айтема items_next_order из 4-х содержатся в items_current_order.

Пробовал посчитать количество (не долю) так:

SELECT
    client_id ,
    COUNT(1) AS count_values
FROM
    (SELECT
         client_id ,
         unnest(items_next_order) AS value
     FROM
         orders
     GROUP BY
         1, 2) AS a
WHERE
    value = ANY (SELECT unnest(items_current_order) FROM orders as rj WHERE rj.client_id = a.client_id )
GROUP BY
    client_id 


Ответы (0 шт):