Поскольку inline-block
учитывает пробел, в этом случае каждый элемент помещает пробел между символами. Избегайте этого, есть некоторые приемы , но я предлагаю вам использовать css grid:
body {
display: grid;
grid-template-columns: 1fr 1fr;
}
Это - точно вид вещи, для которой агрегатные функции. Вы делаете одну строку вывода для каждой группы строк в таблице. Сгруппируйте их shop_id и рассчитайте, сколько строк находится в каждой группе.
select shop_id, count(1) from TABLE_NAME
group by shop_id