У меня есть сетка данных на моем сайте, где я извлекаю информацию о компании из 2 таблиц.Использование UNION для извлечения данных в сетку
Я создаю форму, чтобы отсортировать результаты на основе 3-х фильтров (Категория, штат, город)
Это мой запрос для загрузки данных в сети на начальном этапе. Я хочу, чтобы он был заполнен, будет ВСЕ мои данные таблицы UNTIL пользователь решает его фильтровать, поэтому я использую UNION, так как без него мой запрос ждет, когда я передам значение строки запроса, чтобы завершить инструкцию WHERE.
SELECT * FROM BND_listing left join BND_ListingCategories
on BND_Listing.CatID=BND_ListingCategories.CatID
UNION
SELECT * FROM BND_listing left join BND_ListingCategories
on BND_Listing.CatID=BND_ListingCategories.CatID
WHERE (CategoryName = '[querystring:filter-Category]' OR '[querystring:filter-Category]' is NULL)
Я не уверен, что это правильная процедура для этого.
У меня возникли трудности с пониманием параметра NULL этого запроса. При загрузке страницы нет строки запроса.
Только один раз, когда пользователь нажимает кнопку «СОРТИРОВКА», строка запроса добавляется в URL-адрес. Пользователь может выбрать сортировку по 1 или все 3 фильтра, но в случае, если они сортируют только по одному из вариантов. Строка запроса передает ВСЕ для остальных двух, которые остались в одиночестве.
IE: фильтр-категория/Barber% 20Shop/фильтр-Город/Все/фильтр-State/Все Здесь пользователь только выбрать «парикмахерской» от 1 раскрывающиеся и покинул город & государственные раскрывающиеся меню, как их по умолчанию.
Мой запрос, который «прослушивает» параметры строки запроса, работает неправильно в моем приложении. Однако при использовании в студии SQL Management следующего содержания он правильно выполняет мои записи.
SELECT * FROM BND_listing left join BND_ListingCategories
on BND_Listing.CatID=BND_ListingCategories.CatID
WHERE (CategoryName = 'Barber Shop' OR '[querystring:filter-Category]' is NULL)
Это будет мой запрос данных-сетки со всеми 3 «Прослушивающими» предложениями WHERE.
SELECT * FROM BND_listing left join BND_ListingCategories
on BND_Listing.CatID=BND_ListingCategories.CatID
UNION
SELECT * FROM BND_listing left join BND_ListingCategories
on BND_Listing.CatID=BND_ListingCategories.CatID
WHERE (CategoryName = '[querystring:filter-Category]' OR '[querystring:filter-Category]' is NULL)
AND (city = '[querystring:filter-City]' OR '[querystring:filter-City]' IS NULL)
AND (state ='[querystring:filter-State]' OR '[querystring:filter-State]' IS NULL)
Любая помощь, ввод, примеры, проницательность высоко оценены!
показать результат с первого выбора и второго выбора. –
Hello Denny, Я добавил фотографии. – UserSN
что такое [querystring: filter-Category], sry idk это. это значение, введенное из html ?? –