我甚至不确定它是否可行,但我需要它用于我的Access数据库。所以我有以下数据库结构:
alt text http://images.virtualdesign.pl/images/25480Drawing1.jpg
现在我需要执行一个从我的产品中获取category_id并执行魔术的查询:
- 假设产品属于控制台(category_id
在表控制台中)
- 从console_types开始type_id
,其中category_id == category_id
- 但如果产品属于console_game
(category_id
位于表console_game
)中
- 来自console_game
game_cat_id
,category_id == category_id
我不确定mysql是否能够做到这一点。如果不是我真的有问题。也许有办法将其分成2,3个单独的查询?
编辑:
我找到了类似IF EXISTS (SELECT type_id FROM console WHERE category_id='category_id')
的内容。也许这会有所帮助?
答案 0 :(得分:0)
您需要使用case语句来执行以下选择:
Select Case (expression)
Case option1
statement1
Case option2
statement2
Case语句在MySql,Sql Server等中有效。(语法因实现而异)。
答案 1 :(得分:0)
您可以通过执行三个子查询来解决此问题,并使用UNION ALL来合并它们。