Как выполнить фильтр на основе поиска с применением 2 фильтра одновременно? - PullRequest
0 голосов
/ 20 февраля 2019

У меня есть страница поиска, где есть 2 фильтра.один - город, а другой - сервис.Значения города находятся в пользовательской таблице, где город - столбец, а значения служб - в другой таблице служб. Когда я выполняю поиск, применяя оба фильтра, в выходных данных должен отображаться ответ, объединяющий оба результата в одном виде сетки /

, пожалуйстаподсказать логику как можно сделать?

Ответы [ 2 ]

0 голосов
/ 20 февраля 2019

Вы хотите объединить 2 таблицы вместе, используя SQL-запрос.

Вы можете делать то, что просите, так же, как показано ниже.

Сначала давайте представим структуру 2 таблиц, давайтевыберите Human и Address в качестве наших таблиц.

Вот таблица Human:

ID (PK AutoIncrement) | FirstName (nvarchar(50)) | LastName nvarchar(50)) | AddressID (int) |
1                     | Bob                      | Bobson                 | 8               |
2                     | Dob                      | Dobbers                | 9               |

Вот таблица Address:

AddressID (PK AutoIncrement) | HouseNum (int)         | PostCode nvarchar(6)                        
8                            | 2                      | AL23FP                        
9                            | 37                     | AL23UR                     

Вы видите, что мы можем объединить эти таблицына основе их AddressID, поскольку они имеют общие значения, являются взаимными.

Таким образом, вы можете запросить эти 2 таблицы, выполнив что-то вроде этого:

SELECT h.FirstName + ' ' + h.LastName AS Name, a.PostCode FROM HUMAN h
INNER JOIN Adress a on h.AddressID = a.AddressID

Это основа для применения запроса кВаши фильтры только с разными именами столбцов таблицы.

INNER JOIN сохранит только соответствие между двумя таблицами, если в обеих есть взаимная информация.

Вы можете видеть другие Joins здесь

0 голосов
/ 20 февраля 2019

Если вы используете хранимые процы в своей базе данных SQL, один из способов - записать хранимый прок, в котором в качестве параметра будет указан город и служба, которые будут возвращать данные с помощью SQL-соединения.В вашем коде или классе c # вы можете вызвать хранимый SQL-запрос и отобразить его в DataTable, проанализировать результаты и JSON сериализовать данные, чтобы отправить их обратно клиенту.Если вы используете Enitity Framework, вы можете сделать то же самое с запросами Linq и сопоставить его с вашими объектами модели c #.Затем вы можете JSON сериализовать эти данные и отправить их обратно клиенту.В коде на стороне клиента вы можете анализировать список и отображать его в своей таблице в любой клиентской среде, которую вы используете.

Это поможет узнать больше информации о вашей стороне сервера и клиентской среде.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...