База данных SQL 2005 - выбрать по идентификатору или выбрать по названию? - PullRequest
2 голосов
/ 11 августа 2010

Я создаю переписывание URL для asp.net.Теперь я пытаюсь добавить идентификатор в URL или просто в заголовок.Ребята, вы знаете, является ли значительным ударом по производительности поиск элемента по названию вместо идентификатора?

Ответы [ 4 ]

1 голос
/ 11 августа 2010

Это зависит от количества строк в вашей таблице и многих других факторов, но, как правило, если у вас есть индекс в столбце заголовка, это не должно сильно сказываться на производительности.В конечном счете, единственный реальный способ выяснить, является ли это проблемой в вашем сценарии, - это попробовать и запустить несколько тестов.

1 голос
/ 11 августа 2010

Если вы можете, поиск по первичному ключу, который, вероятно, ID в вашем случае.

Однако, если ваши заголовки уникальны и у вас есть индекс на заголовок, разница в производительности должна быть минимальной.

Редактировать: Поскольку URLwriting, заголовок, вероятно, имеет лучший SEO-пробег, FWIW

0 голосов
/ 11 августа 2010

Это зависит.

Если идентификатор используется для кластерного идентификатора (форма по умолчанию PK), поэтому разница может быть значительной,

потому что простыми словами: если вы используете кластерный индекс для извлечения данных, вы выполняете меньше операций.

Числовой тип против символа. Это также зависит от размера, который Вы объявили для этого типа. ЧИСЛО (20) медленнее, чем VARCHAR (5).

0 голосов
/ 11 августа 2010

Самый важный фактор - убедиться, что у вас есть индекс для столбца, по которому вы пытаетесь выполнить поиск. Так что еще один способ сказать, что это указатель на столбцы в предложении where.

Наслаждайтесь!

...