MySQL 从特定值中选择

Posted

技术标签:

【中文标题】MySQL 从特定值中选择【英文标题】:MySQL select from specific values 【发布时间】:2019-03-22 09:55:51 【问题描述】:

我正在尝试执行一个查询,将文字值列表转换为结果集,但如果不进行联合,我无法完全弄清楚语法。

以下是我尝试过的几件事:

SELECT *
FROM (1, 2, 3, 5, 6) temp(id);

select x.* from 
(('test-a1', 'test-a2'), ('test-b1', 'test-b2'), ('test-c1', 'test-c2')) x(col1, col2);

我期望的结果集如下所示:

id
1
2
3
4
5
etc…

col1 | col2
test-a1, test-a2
test-b1, test-b2
test-c1, test-c2
etc…

【问题讨论】:

【参考方案1】:
CREATE TEMPORARY TABLE temp_id_table
( id INT UNSIGNED NOT NULL );

INSERT INTO temp_id_table ( id ) VALUES
(1),(2),(3),(4),(5)
;

select id from temp_id_table;

结果:

id
1
2
3
4
5

【讨论】:

【参考方案2】:

创建一个临时表,将这些值插入到临时表中,然后查询您的临时表。

【讨论】:

以上是关于MySQL 从特定值中选择的主要内容,如果未能解决你的问题,请参考以下文章

从mysql中的值中选择

MySQL 从多个值中选择,只返回完全匹配

MySQL 从每个值中选择 max()

当php函数从mysql数据值中选择时,“未定义的变量”

mySQL如何从没有组的重复值中选择MAX(日期)[重复]

MySQL从一系列相同的值中选择第一条和最后一条记录