2016-11-14 2 views
0

Как подсчитать строки, где значение столбца начинается с другого значения столбца?Postgresql: подсчитать столбцы, значение которых начинается со значения другого столбца

К примеру, у меня есть таблица продуктов показанных ниже

--------------------------- 
id code abbreviation 
--------------------------- 
1 AA01 AA 
2 AB02 AB 
3 AA03 AA 
4 AA04 AB 
--------------------------- 

Я хочу, чтобы получить количество продуктов, чьи код начинается с аббревиатурой. Запрос как этот

select count(*) from products where code ilike abbreviation+'%' 

Я использую PostgreSQL 9.5.3

+0

ли сокращения в фиксированном размере? –

+0

@Dudu Markovitz Нет, аббревиатуры могут быть любой длины – faizi

ответ

2

Оператор конкатенации строк в PostgreSQL является: ||

select count(*) from products where code like abbreviation || '%'; 
-1

Вы можете попробовать:

select count(*) from products where code like '%'+abbreviation+'%' 

Но я не уверен, зачем вам нужен этот тип запроса.

Смежные вопросы