【发布时间】:2009-06-15 12:57:48
【问题描述】:
我正在寻找一种有助于创建复杂 SQL 查询的工具。有时甚至很难验证查询的结果是否正确。让查询联接多个表以返回太少或太多数据是特别容易的。
该工具至少应该能够创建测试表,某种形式的查询如何收集数据的可视化,并有望比 Oracle 提供更好的错误案例解析。
是否有这样的工具,或者我必须坚持手动创建测试表,用测试数据填充它们并使用 SQuirrel SQL 提交各种查询?
【问题讨论】:
标签: sql
我正在寻找一种有助于创建复杂 SQL 查询的工具。有时甚至很难验证查询的结果是否正确。让查询联接多个表以返回太少或太多数据是特别容易的。
该工具至少应该能够创建测试表,某种形式的查询如何收集数据的可视化,并有望比 Oracle 提供更好的错误案例解析。
是否有这样的工具,或者我必须坚持手动创建测试表,用测试数据填充它们并使用 SQuirrel SQL 提交各种查询?
【问题讨论】:
标签: sql
当您有一个非常复杂的查询时,通常最容易通过将其分解为填充临时表的多个查询来进行验证。这些中间结果可以单独验证,然后将它们组合在一起以生成最终结果集。根据性能需求,您可以坚持使用临时表方法,也可以重写为单个语句。通常,当我有一个巨大的查询时,它是用于后台处理的,所以我坚持使用临时表方法。
【讨论】:
您使用的是什么 RDBMS?所有主要的都有某种类型的控制台可用(例如,SQL Server 中的 SSMS、Oracle 中的 Toad、MySQL 查询浏览器/MySQL 管理员等),它们都有查询执行计划,您可以在其中查看查询将如何执行实际运行。因此,您的问题的答案是它完全取决于您使用的 RDBMS,但安全的答案是:是的。
【讨论】:
如果您使用 SQL Server,我建议您尝试使用 SQL Server 2008 Management Studio Express (SSMSE)。我在工作中使用过它,我相信它可以满足您的所有需求。
你可以得到它和 SQL Server (express editions) here.
【讨论】:
当然不是免费的开源解决方案,但我相信 Quest Software 的 TOAD 会满足您的要求。 Quest 似乎在该领域提供了很多工具......他们有用于建模和分析的工具,但是我从未使用过建模器或分析器。
我个人有使用 TOAD for Oracle 商业版的经验。一开始它的 GUI 让人难以抗拒,但在你在脑海中过滤掉所有你永远不会使用的额外按钮后,它就变得易于管理了。
【讨论】: