【发布时间】:2010-09-14 02:48:39
【问题描述】:
问题本身很简单,但我想不出在一个查询中解决问题的解决方案,这是我对问题的“抽象”,以便进行更简单的解释:
我会保留我原来的解释,但这里有一组示例数据和我期望的结果:
好的,这里有一些示例数据,我用空行分隔对
-------------
| Key | Col | (Together they from a Unique Pair)
--------------
| 1 Foo |
| 1 Bar |
| |
| 2 Foo |
| |
| 3 Bar |
| |
| 4 Foo |
| 4 Bar |
--------------
我期望的结果是,运行一次查询后,它需要能够在一个查询中选择这个结果集:
1 - Foo
2 - Foo
3 - Bar
4 - Foo
原文解释:
我有一张表,称之为TABLE,其中我有两列ID 和NAME,它们共同构成了表的主键。现在我想选择ID=1 的位置,然后首先检查它是否可以找到NAME 具有值“John”的行,如果“John”不存在,它应该查找NAME 为“ Bruce” - 但仅在“Bruce”和“John”都存在或当然只有“John”存在时才返回“John”。
还要注意,它应该能够为每个查询返回几行匹配上述条件但当然具有不同的 ID/名称组合,并且上述解释只是对实际问题的简化。
我可能完全被自己的代码和思路所蒙蔽,但我就是想不通。
【问题讨论】:
-
您能举个例子澄清一下这个问题吗?即提供最少的数据集以及您希望从中获得的解决方案?
-
您要求答案的跨平台程度如何?我可以想出一些可以在 SQL Server 中工作,但在 MySQL 中不行的东西......
-
Georgi:我用一些示例数据阐明了这个例子,我在一次查询后期望得到的结果 AviewAnew:任何事情都有帮助
标签: sql mysql sql-server database postgresql