Re: PG SQL and LIKE clause

Поиск
Список
Период
Сортировка
От Adrian Klaver
Тема Re: PG SQL and LIKE clause
Дата
Msg-id 065c0194-cd62-a92e-fdcb-7b439ee67ed9@aklaver.com
обсуждение исходный текст
Ответ на Re: PG SQL and LIKE clause  (Ron <ronljohnsonjr@gmail.com>)
Список pgsql-general
On 9/13/19 7:35 AM, Ron wrote:
> On 9/13/19 9:14 AM, Adrian Klaver wrote:
>> On 9/12/19 11:11 PM, Ron wrote:
>>> On 9/13/19 12:28 AM, Matthias Apitz wrote:
>>>> Hello,
>>>>
>>>> We're porting a huge Library Management System, written using all kind
>>>> of languages one can think of (C, C++, ESQL/C, Perl, Java, ...) on 
>>>> Linux
>>>> from the DBS Sybase to PG, millions of lines of code, which works also
>>>> with DBS Oracle and in the past with INFORMIX-SE and -ONLINE.
>>>>
>>>> We got to know that in CHAR columns with trailing blanks a
>>>>
>>>> SELECT ... FROM ... WHERE name LIKE 'Ali'
>>>>
>>>> does not match in 'name' having 'Ali '.
>>>
>>> Did you forget the "%"?  Because the SQL standard which PostgreSQL 
>>> follows is:
>>>
>>> SELECT ... FROM ... WHERE name LIKE 'Ali%'
>>
>> The above is if you want to find a string starting with 'Ali'. If you 
>> are looking for the complete string 'Ali' then it is appropriate. The 
>> OP is looking for a way to automatically match a complete string 
>> against a right stripped string from a CHAR field.
> 
> This is highly dependent on implementation.  On the RDBMS that I used to 
> work on, trailing whitespace was automatically stripped from CHAR(xx) 
> fields.
> 

That is what is driving the OP's question. On Sybase the trailing 
whitespace is stripped apparently, on Postgres it is not, at least for 
the purposes of LIKE. Though for other comparisons whitespaces are 
ignored. See below for more information:

https://www.postgresql.org/docs/11/datatype-character.html

-- 
Adrian Klaver
adrian.klaver@aklaver.com



В списке pgsql-general по дате отправления:

Предыдущее
От: Judy Loomis
Дата:
Сообщение: Re: Cascade Trigger Not Firing
Следующее
От: Adrian Klaver
Дата:
Сообщение: Re: problems importing from csv