存储过程中的select into from是干什么的
select into 赋值:
select 0 into @starttime
select @starttime from DUAL
into后边应该还有个变量名,into前面也还要带上筛选字段,例如
select count(*) into v_count from dual;
这条语句的意思是查询dual表的所有记录数,将查询结果存入v_count变量中,也就是给变量设值的用法 可以给变量赋值
CREATE PROCEDURE cp_p_recived ()
BEGIN
SELECT
IFNULL(MAX(recived_time), 0) INTO @starttime
FROM
p_recived_before;
DELETE FROM p_recived_before;
INSERT INTO p_recived_before (
user_id,
recived_time,
recived_count,
create_time,
city_id
) SELECT
cp.user_id,
cp.recived_time,
cp.recived_count,
cp.create_time,
cp.city_id
FROM
(
SELECT
(
SELECT
user_id
FROM
addrdb.w_contacts
WHERE
phone = w.receiver_mobile
LIMIT 1
) AS user_id,
w.sign_date AS recived_time,
1 AS recived_count,
unix_timestamp(now()) * 1000 AS create_time,
receiver_city_id AS city_id
FROM
tmsdb.w_waybill w
WHERE
w.sign_date > @starttime
AND w. STATUS = 200
ORDER BY
w.sign_date ASC
LIMIT 2000
) cp;
SELECT IFNULL(MAX(recived_time), 0) INTO @mymaxtime FROM p_recived_before;
INSERT INTO p_recived (
user_id,
recived_time,
recived_count,
create_time,
city_id
) SELECT
pr.user_id,
pr.recived_time,
pr.recived_count,
pr.create_time,
pr.city_id
FROM
(
SELECT
user_id,
recived_time,
recived_count,
create_time,
city_id,
MAX(recived_time)
FROM
p_recived_before WHERE user_id is NOT NULL
GROUP BY
user_id
) pr
LEFT JOIN (
SELECT
user_id
FROM
p_recived
WHERE
create_time >= UNIX_TIMESTAMP(CAST(SYSDATE() AS DATE)) * 1000
AND create_time < UNIX_TIMESTAMP(CAST(SYSDATE() AS DATE) + 1) * 1000
) p ON pr.user_id = p.user_id
WHERE
pr.user_id > 0
AND pr.city_id > 0
AND p.user_id IS NULL;
DELETE
FROM
p_recived_before;
INSERT INTO p_recived_before (
recived_time
) VALUES (@mymaxtime);
END
13611227650
select * from tmsdb.w_waybill w where receiver_id='KH1710260000080'
存储过程中的select into from是干什么的的更多相关文章
- 存储过程中使用select……into
在MySQL存储过程中使用SELECT -INTO语句为变量赋值: 用来将查询返回的一行的各个列值保存到局部变量中. 要求: 查询的结果集中只能有1行. SELECT col_name[,...] I ...
- 【转载】Sqlserver存储过程中使用Select和Set给变量赋值
Sqlserver存储过程是时常使用到的一个数据库对象,在存储过程中会使用到Declare来定义存储过程变量,定义的存储过程变量可以通过Set或者Select等关键字方法来进行赋值操作,使用Set对存 ...
- MySQL存储过程中使用SELECT …INTO语句为变量赋值
使用SELECT …INTO语句为变量赋值 在MySQL存储过程中,可以使用SELECT …INTO语句对变量进行赋值,该语句在数据库中进行查询,并将得到的结果赋值给变量.SELECT …INTO语句 ...
- oracle数据库存储过程中的select语句的位置
导读:在oracle数据库存储过程中如果用了select语句,要么使用"select into 变量"语句要么使用游标,oracle不支持单独的select语句. 先看下这个存储过 ...
- 存储过程中SELECT INTO的使用
在MySQL存储过程中使用SELECT …INTO语句为变量赋值: 用来将查询返回的一行的各个列值保存到局部变量中. 要求: 查询的结果集中只能有1行. SELECT col_name[,...] I ...
- 同一个存储过程中,不能多次select into 到同一张表的问题
表记录的插入方式有两种.其一,先create table 再 insert into from ....其二, 直接 select into. 第一种方式,由于要记录日志,因此IO消耗更多,durat ...
- SQL Server 存储过程中处理多个查询条件的几种常见写法分析,我们该用那种写法
本文出处: http://www.cnblogs.com/wy123/p/5958047.html 最近发现还有不少做开发的小伙伴,在写存储过程的时候,在参考已有的不同的写法时,往往很迷茫,不知道各种 ...
- mysql存储过程中 乱码问题解决办法
中文乱码无论在何时都是一个头疼的问题,mysql的存储过程参数也同样存在这个问题.1.直接使用insert into语句没问题,能够正常插入汉字.2.把insert into语句移到Procedure ...
- Oracle在存储过程中如何返回结果集
Oracle和Sqlserver不一样的地方有很多. 个人最深的体会是存储过程返回结果集,在Sqlserver中直接select查询就行,Oracle就不行了. 这里,就用最简单的例子说明存储过程返回 ...
随机推荐
- HDLM命令dlnkmgr详解之二__help/clear
1.help操作 主要显示命令的帮助信息. 显示所有操作的帮助信息 -bash-3.2# dlnkmgr help dlnkmgr: Format dlnkmgr { clear | help | o ...
- ie6 ie7下报脚本错误"Expected identifier, string or number" 的原因和解决方法
在IE6和ie7里面,脚本报错"Expected identifier, string or number" 写下这个是个之前我已经很头疼了,因为我的代码在其他浏览器里都是正常的, ...
- Plist文件存储
一.Plilst存储简介 (1)只能储存NSData.NSNumber.NSDictionary.NSString.NSDate.NSArray.BOOL等数据类型,如果需要存储其他NSObject类 ...
- findall 、 search的使用
- 20行核心代码:jQuery实现省市二级联动
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- poj3734 Blocks
传送门 题目大意 有n个方块,有1,2,3,4四种颜色对其进行染色,求1,2颜色的方块个数均为偶数的方案数对10007取模的值. 分析 我们假设1表示这个颜色个数是奇数,0表示是偶数,所以对于所有状态 ...
- Luogu 4151 [WC2011]最大XOR和路径
你谷又乱评分…… 首先发现答案只有可能是从$1$开始走到$n$,中间绕若干个环,然后使它取到的异或值最大. 这样子的话我们可以随便先取一条路径,强制选择走这条路径,然后把所有的环都丢进线性基里面去,因 ...
- python中list的使用
1.list(列表)是一种有序的集合,可以随时添加.修改.删除其中的元素. 举例:listClassName = ['Jack','Tom','Mark'] 列表可以根据索引获取元素,如:listCl ...
- 重构get请求代码---PartyLocation
将原理在PersonDto中定义的partyLocations,剪切到PartyDto中去. @JsonApiToMany private List<PartyLocationDto> p ...
- 数据结构与算法(Java版)_堆
完全二叉树叫做堆. 完全二叉树就是最后一个节点之前不允许有不满的节点,就是不允许有空洞. 可以使用数组来做完全二叉树(堆). 堆分为大顶堆和小顶堆.大顶堆就是根节点上的数字是最大的,小顶堆就是根节点上 ...