Как преобразовать SQL в запрос LINQ?
Группа технологий, известная как Language-Integrated Query (LINQ), основана на прямой интеграции функций запросов в язык C#. Выражение запроса — это компонент LINQ, который больше всего выделяется разработчиками, пишущими запросы LINQ. Декларативный синтаксис запроса используется для написания выражений запроса. Фильтрацию, упорядочение и группировку можно выполнять в источниках данных с использованием синтаксиса LINQ с наименьшим объемом кода.
Преобразовать запрос SQL в LINQ:
LINQ аналогичен обращению SQL-запроса. В LINQ обязательные поля проецируются перед предложением where, как и в SQL-запросе. Однако в конце при использовании LINQ возникает проекция.
Формат запроса SQL и LINQ:
- Формат SQL:
SELECT
FROM
WHERE
- LINQ-формат:
FROM
WHERE
SELECT
Давайте рассмотрим вводный пример преобразования SQL в LINQ:
Запрос в формате SQL:
SELECT * FROM Customers WHERE last_name = "Robinson" AND country = "UK";
Запрос в формате LINQ:
FROM Customers WHERE last_name = "Robinson" AND country = "UK"; SELECT *
Возьмем другой пример преобразования запроса SQL в LINQ с использованием языка C#:
SQL-запрос:
Запрос заключается в поиске имен из таблицы имен и из столбца записей, имя которых содержит букву «е».
SELECT name FROM records WHERE CONTAINS("e");
Преобразование SQL-запроса в LINQ на С#:
Пример 1:
C#
using System; using System.Linq; public class GFG { public static void Main() { // Data source Or Database string [] records = { "Rajesh" , "Geeks" , "Utkarsh" , "Aaditya" , "Sourabhe" }; // LINQ Query var Linq_query = from name in records where name.Contains( "e" ) select name; // Query execution foreach ( var name in Linq_query) Console.Write(name + " " ); } } |
Выход:
Разница между SQL и LINQ:
SQL | LINQ |
---|---|
Это предметно-ориентированный язык, используемый для программирования и проектирования данных, которые находятся в СУБД. | Это платформа Microsoft .NET, которая добавляет собственные возможности запроса данных. |
Это язык структурированных запросов. | Это язык интегрированных запросов. |
Он состоит из собственных запросов данных. | Он используется для поиска, сохранения и обновления в базе данных. |