我有一个包含各种列表项的表
*LIST_ITEMS*
ID
LIST_ID_FK
DESCRIPTION
VALUE_ID_FK
我需要选择LIST_ID_FK'S EQUAT 1的所有描述以及LIST_ID_FK = 2的所有DESCRIPTIONS以及LIST_ID_FK = 3
的所有DESCRIPTION' LIST_ID_FK value 1's have no VALUE_ID_FK
LIST_ID_FK value 2's have the FK of value 1 in the VALUE_ID_FK column
LIST_ID_FK value 3's have the FK of value 2 in the VALUE_ID_FK column
输出应为:
List1 List2 List3
England Liverpool test3
England London test1
England London test2
England London test3
我遇到的问题是尝试将所有内容从同一个表中取出并相互链接以组成行。 这可能吗?
答案 0 :(得分:0)
您可以将list_ID_FK
连接到单词test
SELECT Description, 'test' || list_ID_FK List3
FROM mytable
WHERE list_ID_FK IN (1,2,3)
或者您可以使用UNION。第一个选项几乎肯定更快
SELECT Description, test1 List3
FROM mytable
WHERE list_ID_FK = 1
UNION
SELECT Description, test2 List3
FROM mytable
WHERE list_ID_FK = 2
UNION
SELECT Description, test3 List3
FROM mytable
WHERE list_ID_FK = 3