我知道我可以使用
选择一个值SELECT 'value' AS col;
但我需要将一个数字列表作为列返回。像
这样的东西SELECT ('value1', 'value2', 'value3') AS col;
更确切地说,我需要做
SELECT * FROM my_table
INNER JOIN (SELECT ('value1', 'value2', 'value3') AS col ) AS x ON my_table.id = x.col
有人知道我该怎么办?
**** **** EDIT
让我用更多细节解释我的问题,也许你可以提出一个不同的方法来解决它。
我有下表
+--------+--------+------+ | tb1_id | tb2_id | main | +--------+--------+------+ | 15 | 81123 | 1 | | 16 | 81599 | 1 | | 17 | 82101 | 0 | | 17 | 82102 | 1 | | 18 | 82101 | 0 | | 18 | 82102 | 0 | | 18 | 82103 | 1 | +--------+--------+------+
我需要构建一个返回类似内容的查询:
+--------+--------+---------------+ | tb1_id | main | assoc | +--------+--------+---------------+ | 15 | 81123 | | | 16 | 81599 | | | 17 | 82102 | 82101 | | 18 | 82103 | 82102, 82101 | +--------+--------+---------------+
目前我使用子查询来获得结果,但我遇到了性能问题。