powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / VARCHAR VS INT
50 сообщений из 50, показаны все 2 страниц
VARCHAR VS INT
    #40008748
demon1992
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
Есть таблица, в ней много полей(300) и много данных(20М) (поля в основном это FK на справочники). Помимо FK в таблице несколько varchar(255) полей, типа ФИО, номера телефона и т.д.
Вопрос в следующем, будет ли какой либо профит от переноса поля в отдельную таблицу(то есть отразится ли это положительно на скорости поиска инфы по этому полю или там данные будут ?лучше? хранится)? Поле индексное, его заполненность относительно всех строк на данный момент >80%, в худшем случае будет 50% думаю.
И будет ли выигрыш от того, что поле varchar переделать в int?(знаю что индекс по полю int работает быстрее, но стоит ли игра свеч?)
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008771
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VARCHAR(255) в INT переделать может быть непросто...
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008777
demon1992
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
YuRock,
Переделать не проблема (если быть конкретным, это поле номер телефона, я просто выберу функцией из строки только цифры), меня больше интересует, будет ли от этого реальная польза, или это все пережитки прошлого.
Я вот например очень сильно сомневаюсь, что перенос такого поля (varchar(255) с индексом) в отдельную таблицу, где будет уже 4 индекса(pk, fk на основную таблицу, номер в int и guid) вместо одного, построенного по varchar(255), с учетом того, что в среднем это поле будет заполнено на 60% от общего числа строк.
P.S. Я не говорю, что нужно поголовно лепить везде varchar'ы, но мне хотелось бы знать, стоит ли вот такие махинации переделывания большого количества зависимостей да еще и перегона старых данных туда.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008781
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demon1992Переделать не проблема (если быть конкретным, это поле номер телефона, я просто выберу функцией из строки только цифры), меня больше интересует, будет ли от этого реальная польза, или это все пережитки прошлого.

я бы просто уменьшил ширину(размер) поля. Телефон это всё таки не число.
Большие varchar поля могут негативно сыграть на сортировке. Хранятся то они всё равно в сжатом виде
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008790
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demon1992,

тут два момента.
1. - переделывать номер телефона с varchar на int - странная идея. Кроме того, в int хранится до 2х миллиардов, а 9хх ххх-хх-хх - это 9 миллиардов. Так что не влезет. Ну и, уже написали, что varchar и char хранятся по длине значения, а не по объявленному размеру строки.

2. насчет "много полей(300)", и прочего. Есть такое понятие как основные (первичные) данные, и дополнительные (вторичные" данные. Если телефон может быть указан, а может быть не указан, то вообще столбцы такого типа надо выносить из этой таблицы в отдельную, и связывать ее с основной 1:1. Кроме того, это зависит от запросов - насколько часто идут обращения к основной таблице, и насколько часто нужно доставать несколько номеров телефонов, или в конкретный момент достается только один номер телефона.
Это т.н. "денормализация".
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008796
KreatorXXI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если предположить, что большая таблица - это таблица, например, заказов, то для меня как-то противоестественно в ней искать "Что заказал Иванов Иван Иванович за последний месяц". Не противоестественно искать по id-шнику "Иванова Иван Ивановича". ИМХО, требуется рефакторинг, возможно глубокий.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008823
demon1992
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денис,

Об этом я тоже подумал, но почему то такое решение не устраивает.

kdvпеределывать номер телефона с varchar на int - странная идея. Кроме того, в int хранится до 2х миллиардов, а 9хх ххх-хх-хх - это 9 миллиардов.
bigint тогда :)

Меня убеждают что индекс по варчар зло, поэтому, если кто то знает, подскажите пожалуйста:
есть конкретный пример - поле varchar(255) c индексом, какой я получу профит от того, что заморочусь и перенесу это поле в отдельную таблицу, но уже с типом BIGINT, с учетом того что поле необязательное, но его заполненность сейчас больше 90%. Главный акцент мне делают на том, что все дело в индексе и нужно срочно избавляться от индексов по varchar.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008827
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demon1992Меня убеждают что индекс по варчар зло
кто убеждает? Поклонники PostgreSQL? У Firebird: префиксное сжатие ключей индекса, и индекс обновляется только если обновляется конкретный столбец.
demon1992какой я получу профит от того
профит можно оценить только на конкретной системе, и конкретных запросах SQL. Пока ничего кроме геморроя на клиенте с преобразованием всяческих форматов номера телефона в число (туда и обратно) я не вижу.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008831
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demon1992Главный акцент мне делают на том, что все дело в индексе
до кучи. Акцент, видимо, делают на том, что поиск по индексу исключительно префиксный (или полный), а номер телефона могут искать и без префикса. В этом случае да, индекс по "номеру телефона" будет бесполезен, а число или варчар - по барабану.
Кроме того - у вас префикс страны всегда +7? Если нет, то тогда придется делать еще один столбец.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008835
demon1992
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kdv,

Спасибо за ответ.

Но тут собака даже не в этом зарыта, а в том, что якобы индекс по полю varchar супер медленный по сравнению с int/bigint, а также место занимает очень много, не безопасный, не знаю как еще описать.
Вот поэтому я и не могу понять, какую выгоду я получу от того, заменю индекс с varchar(255)(или даже меньше, поле вполне можно ужать) на int.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008839
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demon1992,

вам несут бред.

Я так понимаю это байка выплыла по мотивам что использовать guid или целочисленный автоинкремент в качестве ключа.
Там да, из-за того что автоинкремент генерируется последовательно такой индекс будет компактный.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008851
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не ясно, зачем для номера телефона 255 символов, если максимальная длина - 12.
И, конечно, они влезут в BIGINT, который 8 байт.
А индекс тут бесполезен, т.к. искать в любом случае придется через LIKE, либо через доп. поле(я) (с длиной 7(10) символов).
Может быть смысл в доп. таблице с тремя полями - полный, 10 знаков и 7 знаков (bigint, bigint и int). За одно это даст возможность указывать несколько номеров.
А вообще всё зависит от задачи.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008859
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demon1992bigint тогда :)

Телефон не может быть целым. Точка.

У меня он начинается на +044.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008860
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demon1992
поле номер телефона, я просто выберу функцией из строки только цифры
Было время, когда код города-героя Москва начинался с(о значащего) нуля. Ещё в номере может быть 'допномер, а "удачный" номер может быть задан фразой по буквам на кнопочках. Или там могут быть всякие W из правил набора.
Скобочки/дефисы, опять-таки, могут выделить из полного (десять цифр) номера код страны и населённого пункта. А в коде города может быть разное количество цифр.
Не то чтобы это всё мешает переделать номер телефона в целочисленное поле, но не худо бы учитывать разные ньюансы.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008863
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demon1992что якобы индекс по полю varchar супер медленный по сравнению с int/bigint, а также место занимает очень много, не безопасный, не знаю как еще описать.
"супер-медленный" это как? Кто там советы дает? Мы их тут видели? У них сертификаты прохождения курсов есть, это какие-то известные специалисты по Firebird?

Насчет "очень много места" - выгрузите ваш столбец с телефонами куда-то. Создайте базу. Создайте таблицу с варчар и инт. Загрузите ваши данные в варчар, сконвертируйте в инт. Проиндексируйте оба столбца. Получите статистику gstat -r, сравните размеры обоих индексов.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008864
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
пришел лесник, и всё обломил :-)
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008865
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.10.2020 13:18, kdv пишет:
> пришел лесник, и всё обломил :-)

безапеляционно (и неверно)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008866
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий,

да, это какой-то внутренний формат. С нуля кодов нет
http://ostranah.ru/_lists/phone_codes.php
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008872
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvда, это какой-то внутренний формат.

Нет, это опять вылез мой маразм. Я так долго не пользовался телефоном, что всё забыл.

PS: К примерам выше с буквами и дополнительным номером могу добавить самый типичный случай: два телефона у человека. И нет, громоздить под них отдельные поля или даже отдельную таблицу - совсем неразумный вариант.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008873
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
demon1992bigint тогда :)

Телефон не может быть целым. Точка.

У меня он начинается на +044.+ можно добавлять при отображении в интерфейсе, если длина номера 11 или 12.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008890
demon1992
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблему поиска и отображения номера под конкретную задачу это не то о чем я хотел узнать :)
Это скорее конкретный пример, из-за чего все началось.
Вся проблема в индексе, что использовать индекс по варчар плохо, и надо срочно сделать интовое поле и индексировать по нему.
А собственно все что я хотел для себя прояснить, есть ли реальное подтверждение того, что индекс по тексту чем то уступает индексу по числу.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008899
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demon1992А собственно все что я хотел для себя прояснить, есть ли реальное подтверждение того, что
индекс по тексту чем то уступает индексу по числу.

Бремя доказательств на плечах утверждающего.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008900
Fr0sT-Brutal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Basil A. Sidorov
Было время, когда код города-героя Москва начинался с(о значащего) нуля. Ещё в номере может быть 'допномер, а "удачный" номер может быть задан фразой по буквам на кнопочках. Или там могут быть всякие W из правил набора.
Скобочки/дефисы, опять-таки, могут выделить из полного (десять цифр) номера код страны и населённого пункта. А в коде города может быть разное количество цифр.
Не то чтобы это всё мешает переделать номер телефона в целочисленное поле, но не худо бы учитывать разные ньюансы.

Большая часть из этого - задача визуализации, а вот возможность добавочного номера да, стоит предусмотреть
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008908
Фотография Старый плюшевый мишка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во времена далёкие, теперь почти былинные, телефонные номера, во всяком случае в Ленинграде, начинались с буквы. На пальцекрутном диске они, ессно, тоже присутствовали. Обозначали эти буквы районные АТС. Были в народе даже присказки, типа - опять ты всё сделал через Некрасовскую АТС. Бо она буквой Ж обозначалась. Я это к чему. Не исключаю, что нечто в этом роде может всплыть. С целью затруднить заграничным шипиёнам звонки нашим гражданам или просто бюджет попилить на внедрение.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008921
Шавлюк Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сейчас номер может быть в формате +nnnnnnnn*kkk (или #?)
Для выхода сразу на внутренний телефон
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008925
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.10.2020 14:53, Шавлюк Евгений пишет:
> Сейчас номер может быть в формате +nnnnnnnn*kkk (или #?)
> Для выхода сразу на внутренний телефон

решается добавочным полем
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008933
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийрешается добавочным полем

"Спросить Марию Ивановну" тоже добавочным полем?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008938
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.10.2020 15:13, Dimitry Sibiryakov пишет:
> "Спросить Марию Ивановну" тоже добавочным полем?..

ну а?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008945
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fr0sT-Brutal
Большая часть из этого - задача визуализации, а вот возможность добавочного номера да, стоит предусмотреть
Коды страны и населённого пункта это отнюдь не визуализация.
Мой посыл в том, что "преобразовать номер телефона в целочисленное поле" - задача не самая тривиальная и вопрос "эффективности" varchar в этом случае - последнее, о чём должен думать разработчик.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40008952
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящийну а?

Хм, действительно, смысла в индексе для поиска такого телефона - полный ноль.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009000
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денис
demon1992Переделать не проблема (если быть конкретным, это поле номер телефона, я просто выберу функцией из строки только цифры), меня больше интересует, будет ли от этого реальная польза, или это все пережитки прошлого.


я бы просто уменьшил ширину(размер) поля. Телефон это всё таки не число.
Большие varchar поля могут негативно сыграть на сортировке. Хранятся то они всё равно в сжатом виде
Телефон - это действительно не-число. Весь телефонный биллинг опирается на это определение.
И если вы учитываете номерную ёмкость таксофонов (это могут быть шестнадцатеричные цифры [0-9A-F])
или если вам важно отличать 09 и 009 то для вас номер тех-средства - это строка. И ничего тут не поделать.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009011
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Симонов Денис
пропущено...
я бы просто уменьшил ширину(размер) поля. Телефон это всё таки не число.
Большие varchar поля могут негативно сыграть на сортировке. Хранятся то они всё равно в сжатом виде

Телефон - это действительно не-число. Весь телефонный биллинг опирается на это определение.
И если вы учитываете номерную ёмкость таксофонов (это могут быть шестнадцатеричные цифры [0-9A-F])
или если вам важно отличать 09 и 009 то для вас номер тех-средства - это строка. И ничего тут не поделать.
таксофоны практически вымерли.
в Питере их осталось 399 аппаратов (по данным Ростелекома за 2019 год),
да и те собираются ликвидировать нахрен.
обслуживание "нулевых" номеров на федеральном уровне планомерно прекращается.
некоторые операторы пока ещё предоставляют доступ к таким номерам.
в большинстве своём, с сотового на такой номер хрен позвонишь.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009014
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
demon1992>выигрыш от того, что поле varchar переделать в int

Например, в этом поле хранить количество чего/либо. Если отсортировать его как int, будет красиво, а если как строку - то так себе. Правда, начиная с 2.5 (вроде бы) и строки можно красиво сортировать, с учетом значения чисел в строке...
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009023
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хорошо. Поскипаем таксофоны и нулевые. А какое максимальное число цифр биллинг может фиксировать?
Я подозреваю что на стыке мобильных операторов эта разрядная сетка может снова увеличится.

И если чисто технически идея срабатывает для одного оператора или ведомственной АТС то в глобальном
(мировом масштабе) инта может просто не хватить.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009026
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.10.2020 18:14, mayton пишет:
> И если чисто технически идея срабатывает для одного оператора или ведомственной АТС то в глобальном
> (мировом масштабе) инта может просто не хватить.

101% пользователей не нужен глобус мирового масштаба
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009030
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ладно делайте. Скажите что получилось.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009047
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Старый плюшевый мишка,

- алло, это 9-99-99?
- да
- вызовите, пожалуйста, скорую, у меня палец в диске застрял.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009052
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот таким манером можно было и сложные номера выучить. Заменяешь каждую вторую цифру на букву а то и все
и придумываешь ассоциации. Как доменные имена вместо айпишников.

...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009170
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
15.10.2020 20:27, mayton пишет:
> Автор: mayton. Вот таким манером можно было и сложные номера выучить. Заменяешь каждую вторую цифру на букву а то и все
> и придумываешь ассоциации. Как доменные имена вместо айпишников.

дык и на кнопочных по сию пору присутствует ABC-гедейка
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009178
demon1992
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сделал тестовую БД, создал пару таблиц, заполнил одинаковыми данными.
Статистика индекса:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
    Index TABLE_INT_IDX1 (0)
        Root page: 56636, depth: 3, leaf buckets: 7701, nodes: 11000000
        Average node length: 11.33, total dup: 66, max dup: 1
        Average key length: 8.35, compression ratio: 1.08
        Average prefix length: 3.65, average data length: 5.35
        Clustering factor: 10999685, ratio: 1.00
        Fill distribution:
             0 - 19% = 0
            20 - 39% = 0
            40 - 59% = 1
            60 - 79% = 0
            80 - 99% = 7700

    Index TBL_CHAR_IDX1 (0)
        Root page: 3918, depth: 3, leaf buckets: 7780, nodes: 11000000
        Average node length: 11.44, total dup: 66, max dup: 1
        Average key length: 8.45, compression ratio: 1.41
        Average prefix length: 6.43, average data length: 5.45
        Clustering factor: 10999726, ratio: 1.00
        Fill distribution:
             0 - 19% = 1
            20 - 39% = 0
            40 - 59% = 0
            60 - 79% = 0
            80 - 99% = 7779 



Сделал запрос:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
select NEW_FIELD
from TBL_CHAR
where NEW_FIELD = '754197905425'

Plan
PLAN (TBL_CHAR INDEX (TBL_CHAR_IDX1))

------ Performance info ------
Prepare time = 31ms
Execute time = 31ms
Avg fetch time = 31,00 ms
Current memory = 4 461 497 488
Max memory = 5 301 318 608
Memory buffers = 262 144
Reads from disk to cache = 0
Writes from cache to disk = 0
Fetches from cache = 12

select NEW_FIELD
from TABLE_INT
where NEW_FIELD = 754197905425

Plan
PLAN (TABLE_INT INDEX (TABLE_INT_IDX1))

------ Performance info ------
Prepare time = 32ms
Execute time = 31ms
Avg fetch time = 31,00 ms
Current memory = 4 461 497 968
Max memory = 5 301 318 608
Memory buffers = 262 144
Reads from disk to cache = 0
Writes from cache to disk = 0
Fetches from cache = 12



Меня до сих пор продолжают уверять, что пользоваться индексами по варчар крайне нежелательно.(что по варчар он медленный и занимает много места, а вот по инту он быстрый и весит мало).
Я честно хочу понять, объясните плиз, в чем разница в индексах.
Может статья есть какая, или видос, буду рад любой инфе.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009182
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
16.10.2020 12:04, demon1992 пишет:
> Меня до сих пор продолжают уверять...
> Я честно хочу понять, объясните плиз...

поясняю: "питарасы, сэр!" (С)

им хлеба не надо.
лишь бы мозги заипать.
наивным юношам.

беги оттуда.
они не остановятся.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009183
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demon1992Меня до сих пор продолжают уверять, что пользоваться индексами по варчар крайне нежелательно.(что по варчар он медленный и занимает много места, а вот по инту он быстрый и весит мало).

мифы и легенды

demon1992Я честно хочу понять, объясните плиз, в чем разница в индексах.

ключи индекса хранятся чуток по разному. Для строк в ключах хранится строка, для чисел и дат — число как double.
Префиксное сжатие используется в обоих случаях. Если и есть разница в эффективности то она настолько мала, что не стоит заморачиваться.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009186
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demon1992Меня до сих пор продолжают уверять, что пользоваться индексами по варчар крайне нежелательно
кто? покажите мне этих людей. пусть выйдут на свет божий, покажут свою квалификацию.
demon1992Я честно хочу понять, объясните плиз, в чем разница в индексах.
да никакой нет, о чем я и говорил.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009189
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demon1992,

меня вот что удивляет - сидят там какие-то херомоны в подвале, и советы дают. Ну пусть они сюда вылезут-то. Послушаем.
А так это какие-то рекомендации трактористов.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009191
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvпокажите мне этих людей. пусть выйдут на свет божий, покажут свою квалификацию.

Телепаю: это начальник топикстартера. Спорить с ним бесполезно, обучать - слишком поздно.
+1 к "беги оттуда".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009193
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
16.10.2020 12:55, kdv пишет:
>
> меня вот что удивляет - сидят там какие-то херомоны в подвале, и советы дают.
> Ну пусть они сюда вылезут-то. Послушаем.
> А так это какие-то рекомендации трактористов.


Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009218
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

kdvпокажите мне этих людей. пусть выйдут на свет божий, покажут свою квалификацию.

Телепаю: это начальник топикстартера. Спорить с ним бесполезно, обучать - слишком поздно.
+1 к "беги оттуда".

У нас как-то один банк софтину пытался купить, но напоролись на ... "отдел АСУ" этой конторы.
Какая-то бумага, заверенная очень страшными подписями, в которой указано, что с данном банке в качестве СУБД используется сервер MS SQL 2005, и больше ничего.
Начальник отдела АСУ: "насколько мне известно, в архитектуре классов Delphi есть адаптеры, которые позволяют приложению использовать любую СУБД, могу продемонстрировать; не вижу проблем переделать". Помню, я тогда просто офигел.
Ну и ещё какая-то дичь "я слышал, что они <не помню, уже, кто "они"> плохо взаимодействуют, поэтому сделайте <дальше полный п....ц>"
...всё решилось, но, конечно, не "адаптерами", а на административном уровне, хороший опыт.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009251
demon1992
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не, никто не заставляет ничего писать, убеждали но не принуждали.
Это уже мое, мне было интересно самому во всем разобраться.

Всем большое спасибо за участие.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009259
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
demon1992убеждали но не принуждали.
кто. нёс. эту. ересь. прошу сообщить.
...
Рейтинг: 0 / 0
VARCHAR VS INT
    #40009274
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Расстрельные списки.
...
Рейтинг: 0 / 0
50 сообщений из 50, показаны все 2 страниц
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / VARCHAR VS INT
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]