骏马金龙 (新博客:www.junmajinlong.com)

网名骏马金龙,钟情于IT世界里的各种原理和实现机制,强迫症重症患者。爱研究、爱翻译、爱分享。特借此一亩三分田记录自己成长点滴!!!

翻译:SELECT INTO语句(已提交到MariaDB官方手册)

本文为mariadb官方手册:SELECT INTO的译文。

原文:https://mariadb.com/kb/en/selectinto/
我提交到MariaDB官方手册的译文:https://mariadb.com/kb/zh-cn/selectinto/

语法

SELECT col_name [, col_name] ...
    INTO var_name [, var_name] ...
    table_expr

描述

使用SELECT ... INTO语句可以将指定列的值直接存储到变量中。该语句不会显式输出任何结果。 该查询语句只能返回单行查询结果,如果查询没有任何返回行,则返回 1329 错误(No data),这时变量保持不变。如果查询返回多行,则返回 1172 错误(结果超出一行)。如果查询语句可能会返回多行,可以使用 LIMIT 1子句来限制结果集中只有单行。

其中INTO子句也可以指定在语句的结尾处。

如果该语句的执行上下文是事件调度器(Event Scheduler)所执行的事件一部分,那么诊断信息(不仅包括errors,还包括warning)会写入到错误日志中,在Windows上则是写入到事件日志中。更多信息请参见http://dev.mysql.com/doc/refman/5.1/en/events-status-info.html

该语句可为本地变量 local variables 和用户变量 user-defined variables 赋值。

更详细的语法,参见 SELECT

另一种为变量赋值的方式是使用 SET 语句。

SELECT ... INTO 的结果不会缓存到 query cache 中,即使指定了 SQL_CACHE 选项。

示例

SELECT id, data INTO x,y 
FROM test.t1 LIMIT 1;

See also

posted @ 2018-03-24 09:33  骏马金龙  阅读(821)  评论(0编辑  收藏  举报