Size: a a a

pgsql – PostgreSQL

2021 March 12

МШ

Михаил Шурутов... in pgsql – PostgreSQL
Михаил Шурутов
Зависит от характера текста и используемых индексов.
А вообще, вот: https://habr.com/ru/search/?q=%5Bindexing%5D&target_type=posts

Цикл статей Егора Рогова про индексы в ПГ. Так и называется: Индексы в PostgreSQL.
источник

RD

Rashid Djam in pgsql – PostgreSQL
Yaroslav Schekin
Хмм... вот что меня всегда в таких случаях удерживает от написания ответов — если спрашивающий "прочитал" (в стиле в одно ухо влетело — в другое вылетело) подробную статью, где всё разжёвывается, и ничего оттуда не вынес, то почему бы ему не поступить так и с любым другим ответом?
И да, я автор той статьи, если что.
вы написали прекрасную статью) ниче против не имею, дело в том что я эту инфу вроде как вычитал уже из stackoverflow, но вот по индексам попадаются противоречивые ответы, поэтому приходится собирать информацию по крупицам )
источник

МШ

Михаил Шурутов... in pgsql – PostgreSQL
Rashid Djam
вы написали прекрасную статью) ниче против не имею, дело в том что я эту инфу вроде как вычитал уже из stackoverflow, но вот по индексам попадаются противоречивые ответы, поэтому приходится собирать информацию по крупицам )
В конце материала английским по белому: but the system has to jump through some extra hoops to work with varchar, and every so often you'll run into a case where "varchar" is not optimized as well as "text".
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Rashid Djam
вы написали прекрасную статью) ниче против не имею, дело в том что я эту инфу вроде как вычитал уже из stackoverflow, но вот по индексам попадаются противоречивые ответы, поэтому приходится собирать информацию по крупицам )
Правда?! Так скажите мне, как вот это переводится (прямая цитата из статьи, и это пишет основной разработчик PostgreSQL!):

Actually, Postgres people tend to use "text" rather than unconstrained "varchar". In principle those two types behave equivalently; but the system has to jump through some extra hoops to work with varchar, and every so often you'll run into a case where "varchar" is not optimized as well as "text".

Ну и так далее.
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Михаил Шурутов
В конце материала английским по белому: but the system has to jump through some extra hoops to work with varchar, and every so often you'll run into a case where "varchar" is not optimized as well as "text".
О, опередили. ;)
источник

RD

Rashid Djam in pgsql – PostgreSQL
Yaroslav Schekin
Правда?! Так скажите мне, как вот это переводится (прямая цитата из статьи, и это пишет основной разработчик PostgreSQL!):

Actually, Postgres people tend to use "text" rather than unconstrained "varchar". In principle those two types behave equivalently; but the system has to jump through some extra hoops to work with varchar, and every so often you'll run into a case where "varchar" is not optimized as well as "text".

Ну и так далее.
ну я собственно и сказал что в статье предпочтение отдается text)
источник

RD

Rashid Djam in pgsql – PostgreSQL
теория эт конечно хорошо, на практике не всегда так как написано в учебниках)
источник

RD

Rashid Djam in pgsql – PostgreSQL
всегда встречаются какие то НО )
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Rashid Djam
ну я собственно и сказал что в статье предпочтение отдается text)
Хмм... Ваш вопрос был "можно ли смело юзать text, вместо varchar?" — это "один"; "those two types behave equivalently" — это "два".
Сколько будет "один" плюс "два", а? ;)
источник

RD

Rashid Djam in pgsql – PostgreSQL
не хотелось бы заполнить таблу миллиардами строк, а потом вдруг нарваться на сюрприз
источник

RD

Rashid Djam in pgsql – PostgreSQL
Yaroslav Schekin
Хмм... Ваш вопрос был "можно ли смело юзать text, вместо varchar?" — это "один"; "those two types behave equivalently" — это "два".
Сколько будет "один" плюс "два", а? ;)
согласен, я не раскрыл вопрос)
источник

RD

Rashid Djam in pgsql – PostgreSQL
спрошу так, дружит ли text  с индексами, с тем же like?
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Rashid Djam
согласен, я не раскрыл вопрос)
Ну так задайте другой, потому что на этот Вам уже ответили.
источник

RD

Rashid Djam in pgsql – PostgreSQL
я так полагаю что дружит)
источник

МШ

Михаил Шурутов... in pgsql – PostgreSQL
Rashid Djam
спрошу так, дружит ли text  с индексами, с тем же like?
Ответ на данный вопрос есть в документации.
источник

МШ

Михаил Шурутов... in pgsql – PostgreSQL
Rashid Djam
я так полагаю что дружит)
См. документацию, иначе сюрпризы неизбежны.
источник

RD

Rashid Djam in pgsql – PostgreSQL
Михаил Шурутов
Ответ на данный вопрос есть в документации.
я не спорю опять таки, мне интересен ответ человека который уже прошел этот путь)
источник

RD

Rashid Djam in pgsql – PostgreSQL
Михаил Шурутов
См. документацию, иначе сюрпризы неизбежны.
ок)
источник

МШ

Михаил Шурутов... in pgsql – PostgreSQL
Rashid Djam
я не спорю опять таки, мне интересен ответ человека который уже прошел этот путь)
Именно like для текста в документации освещён вполне себе доступно и понятно.
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Rashid Djam
спрошу так, дружит ли text  с индексами, с тем же like?
Что такое "дружит"?
Для поиска по LIKE можно создавать разные виды индексов, их полезность целиком зависит от ситуации.
Некоторые запросы с LIKE оптимизируются хорошо, а некоторые — не оптимизируются в принципе (т.е. полное чтение таблицы — лучший вариант).
источник