SQL 结构转换为 OOP

标签 sql oop

作为一个来自面向对象世界的人,我发现很难理解 SQL。然而,最近我意识到经典的 SQL 构造

select X from Y where Z

基本上等价于以下 OOP 结构:

List<SomeType> results = db.query(new Matcher<SomeType> () {
  public boolean match(SomeType candidate) {
    return ...; // checks condition Z on candidate, returns true for match
  }
};

所以我的问题是:其他 SQL 构造(例如联接)的 OOP 等效项是什么?

最佳答案

我认为微软的LINQ(语言独立查询)已经尝试创建一种可以用作SQL的面向对象版本的语言。 Hibernate 的 HQL 是另一个。如果 SQL 给您带来问题,我建议您探索这两个方面。也许他们可以让你更清楚。

关于SQL 结构转换为 OOP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2482708/

相关文章:

java - OOP 航空公司预订

php - SQL 嵌套为一篇博客文章选择多个标签

sql - 在 SQL Server 中创建数据层次结构

oop - 为什么 oop 语言没有 'read only' 访问修饰符?

java - java中两个不同类如何调用同一个方法

c# - 为什么我的接口(interface)的 BaseType 为空?

php - 任何人都知道为什么这个 MYSQL INSERT 不起作用?

mysql - 使用 join、like 和 or 进行查询。没有正确找到行

mysql - 尝试使用 jdbc 读入数据库时​​出现 Google Apps 脚本错误

javascript - 原型(prototype)继承 : Copying a function prototype to another