重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
用select...into语句
专注于为中小企业提供做网站、网站设计服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业青铜峡免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了1000多家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
下面是mysql 5.0的帮助文档的:
这个SELECT语法把选定的列直接存储到变量。因此,只有单一的行可以被取回。
SELECT id,data INTO x,y FROM test.t1 LIMIT 1;
注意,用户变量名在MySQL 5.1中是对大小写不敏感的。请参阅9.3节,“用户变量”。
重要: SQL变量名不能和列名一样。如果SELECT ... INTO这样的SQL语句包含一个对列的参考,并包含一个与列相同名字的局部变量,MySQL当前把参考解释为一个变量的名字。例如,在下面的语句中,xname 被解释为到xname variable 的参考而不是到xname column的:
CREATE PROCEDURE sp1 (x VARCHAR(5))
BEGIN
DECLARE xname VARCHAR(5) DEFAULT 'bob';
DECLARE newname VARCHAR(5);
DECLARE xid INT;
SELECT xname,id INTO newname,xid
FROM table1 WHERE xname = xname;
SELECT newname;
END;
当这个程序被调用的时候,无论table.xname列的值是什么,变量newname将返回值‘bob’。
DECLARE PRIMARY_KEY VARCHAR(100);
SET PRIMARY_KEY = group_concat(NEW.USER_ID,NEW.ROLE_NAME);
查询语句是这样写的:
select group_concat(NEW.USER_ID,NEW.ROLE_NAME)from NEW where 条件;
SELECT group_concat(NEW.USER_ID,NEW.ROLE_NAME separator '连接字符') FROM NEW where 条件;
set@num=1;或set@num:=1。
set@num=1;或set@num:=1;//这里要使用变量来保存数据,直接使用@num变量。
可以通过嵌套,或者最简单的办法就是先insert,该字段留空,然后获取insertid,再update该记录的字段,还有,既然两个字段值都是一样为什么要两个字段这么麻烦
$sql="select * from list order by id asc ";
$rs = mysql_query($sql);
while ($row = mysql_fetch_array($rs))
{
$data[] = $row //需要保存到2维数组中才可以调用的
}
echo "这是第一条记录。ID=".$data[0][0].",title=".$data[0][2];
运行这个看看 有不明白的请看我给的参考资料 和PHP手册
mysql给字符串变量赋值的方法是用select into 变量结构完成赋值。
使用sql的结构语法:
SELECT ... INTO var_list selects column values and stores them into variables.
比如定义一个sql变量:
@x varchar(10);
@y varchar(20);
select id,name INTO @x,@y from dx_tt
这样就完成了赋值。