我针对 Oracle 数据库进行开发。当我需要手动编写时(不使用像 hibernate 这样的 ORM),我使用 WHERE 条件而不是 JOIN。
例如(这只是为了说明风格):
Select *
from customers c, invoices i, shipment_info si
where c.customer_id = i.customer_id
and i.amount > 999.99
and i.invoice_id = si.invoice_id(+) -- added to show a replacement for a join
order by i.amount, c.name
我从一位老 Oracle DBA 那里学到了这种风格。我后来了解到这不是标准的 SQL 语法。除了非标准和数据库可移植性差得多之外,使用这种格式还有其他影响吗?
我不喜欢这种风格,因为它让我更难确定哪种风格WHERE
子句用于模拟JOINs
哪些是用于实际过滤器的,我不喜欢那些使确定程序员的原始意图变得不必要的困难的代码。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)