首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用mysql选择多行

使用mysql选择多行
EN

Stack Overflow用户
提问于 2020-10-15 00:23:42
回答 2查看 40关注 0票数 1

MySql表

代码语言:javascript
复制
CREATE TABLE cities (city VARCHAR(30)); 
  INSERT INTO cities VALUES ('St. Louis');
  INSERT INTO cities VALUES ('San Diego');
  INSERT INTO cities VALUES ('Seattle');

MySql查询

代码语言:javascript
复制
DECLARE @name VARCHAR(30);
   SELECT @name = city FROM cities where name ='Seattle' limit 1;

通过使用上面的查询,我能够将城市名称选择到@name变量中。但是当我能够选择多个值时:

MySQL查询

代码语言:javascript
复制
DECLARE @name VARCHAR(30);
   SELECT @name = city FROM cities;

我们得到的异常如下:

代码语言:javascript
复制
Error Code: 1172. Result consisted of more than one row

如何使用select into命令选择多个值。谢谢

EN

回答 2

Stack Overflow用户

发布于 2020-10-15 00:28:13

不能在单个字符串变量中选择多个值。如果您对CSV值列表感到满意,则可以使用group_concat()

代码语言:javascript
复制
declare @names varchar(30);
select @names = group_concat(city) from cities;
票数 1
EN

Stack Overflow用户

发布于 2020-10-15 00:33:20

您需要声明一个临时表,并用另一个表的SELECT填充它:

代码语言:javascript
复制
CREATE TEMPORARY TABLE name(city varchar(30)); 
INSERT INTO name SELECT cities FROM cities; 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64357613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档