gpt4 book ai didi

sql - LINQ 语法与 SQL 语法

转载 作者:行者123 更新时间:2023-12-01 06:55:01 25 4
gpt4 key购买 nike

为什么 Andres Heilsberg 将 LINQ 语法设计为不同于 SQL 的语法(从而为程序员学习全新的东西增加了开销)?

如果它使用与 SQL 相同的语法不是更好吗?

最佳答案

LINQ 并不是 SQL。它旨在成为一种尽可能独立于数据源的查询语言。现在不可否认它有很强的 SQL 偏见,但它并不意味着只是在源代码中嵌入 SQL(幸运的是)。

就个人而言,与 SQL 相比,我更喜欢 LINQ 的语法。特别是,排序在 LINQ 中更加合乎逻辑。只需查看查询子句的顺序,您就可以看到处理查询的逻辑顺序。您从数据源开始,可能会进行一些过滤、排序等,通常以投影或分组结束。将其与 SQL 进行比较,在 SQL 中您开始说明您对哪些列感兴趣,甚至还不知道您在谈论什么表。

LINQ 不仅在这方面更合乎逻辑,而且它允许工具更好地与您合作 - 如果 Visual Studio 知道您从什么数据开始,那么当您开始编写 select 时子句(例如)它可以帮助您使用 IntelliSense。此外,它允许使用扩展方法将 LINQ 查询表达式转换为“点表示法”相对简单,而编译器不必了解查询实际执行的任何细节。

所以从我的观点来看:不,如果 LINQ 一味地遵循 SQL 的语法,它会更糟。

关于sql - LINQ 语法与 SQL 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1558465/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com