Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.12.2013, 18:06   #1
Uniskull
Пользователь
 
Регистрация: 19.08.2010
Сообщений: 54
По умолчанию Оптимизация строки запроса

Здравствуйте уважаемые программисты. У меня вопрос: как оптимизировать данный код?
Код:
const string sqlPattern = "SELECT * FROM Questions Where Id={0}";
            for (int i = 0; i < 20; i++)
            {
                var s = database.Questions.SqlQuery(string.Format(sqlPattern, array[i])).ToList();
                _listOfQuestions.Add(s[0]);
            }
Дело в том что если строка запроса будет такой
Код:
SELECT * FROM Questions Where Id=0 And Id=33 And Id=2
то потеряется порядок выбора строк.
Компьютерный форум - World-PC.NET
Uniskull вне форума Ответить с цитированием
Старый 16.12.2013, 19:59   #2
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

Цитата:
если строка запроса будет такой
то совсем ничего не получите, начните с изучения sql
eval вне форума Ответить с цитированием
Старый 18.12.2013, 03:32   #3
Uniskull
Пользователь
 
Регистрация: 19.08.2010
Сообщений: 54
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
то совсем ничего не получите, начните с изучения sql
вместо and - or .. перепутал
Компьютерный форум - World-PC.NET
Uniskull вне форума Ответить с цитированием
Старый 18.12.2013, 07:07   #4
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,876
По умолчанию

Полагаю, так стоит попробовать.
Код:
const string sqlPattern = "SELECT * FROM Questions Where Id in({0})";
for (int i = 0; i < 20; i++)
{
    var s = database.Questions.SqlQuery(string.Format(sqlPattern, String.Join(array[i], ',')).ToList();
    _listOfQuestions.Add(s[0]);
}
phomm вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Оптимизация запроса russian-stalker SQL, базы данных 1 11.10.2011 13:17
Оптимизация запроса Spyhunter1983 SQL, базы данных 2 05.10.2011 15:24
Оптимизация запроса stalsoft SQL, базы данных 0 05.07.2011 14:51
оптимизация запроса pray_driver SQL, базы данных 3 13.12.2010 15:40
Оптимизация запроса za4ot SQL, базы данных 0 11.06.2010 09:24