我有一个在MySQL中创建的1分钟股票价格的数据库。数据库是这样设置的,这样每只股票都有自己的表,由它的符号命名,包含日期,开盘,高,低,关闭,成交量。还有一个名为symbols的表,其中包含Symbol、Type。该数据库的最终目标是能够从一组符号中获得一系列日期的价格。
此查询用于从symbols表中选择符号子集:
SELECT symbol
FROM minute.symbols
WHERE type = 'ETFs';
此查询用于从单个股票中选择日期的子集:
SELECT 'SPY', date, close
FROM minute.SPY
WH
如果我想查询服务器上的所有数据库以查看是否存在存储过程,则可以组合一个服务提供商_执行者并在类似于以下查询的查询上运行游标:
SELECT
'select ' + '''' + name + '''' + ', name from [' + name
+ '].sys.procedures WHERE name = ''usp_MyProc'' COLLATE SQL_Latin1_General_CP1_CI_AI '
FROM
我想要更改我的存储过程,这样它就不再使用游标来工作了。如何更好地编写这个存储过程?
我使用游标来编译动态SQL以查询从列表中创建的服务器,以跟踪事务日志备份历史记录。
ALTER PROC [dbo].[spLogBackup]
AS
TRUNCATE TABLE dbo.tLogBackup
DECLARE servers_cursor CURSOR
FOR
select distinct LinkedserverName
from dbo.Environment
join master..sysservers on srvname COLLATE DATABASE_DEFAULT
我无法声明游标。游标在mysql中的意义是什么
declare c1 cursor for select name from record
错误1064 (42000):您的SQL语法出现了错误;请检查与您的MySQL服务器版本对应的手册,以获得在第1行使用“从记录中选择名称的c1游标”附近使用的正确语法。
我看的是,它的工作方式似乎与MySQL、Server (通过从任何过程逻辑运行简单的SELECT )或在Oracle中使用DBMS_SQL.RETURN_RESULT的方式类似。以下匿名块似乎是有效的:
BEGIN
DECLARE i INTEGER DEFAULT 1;
WHILE i < 10 DO
BEGIN
DECLARE cur CURSOR WITH RETURN TO CLIENT FOR SELECT i FROM sysibm.dual;
OPEN cur;
SET i = i + 1;
END;
END
我正在尝试用MySQL编写一个存储过程,它将执行一个稍微简单的select查询,然后遍历结果,以决定是执行其他查询、数据转换,还是完全丢弃数据。实际上,我想实现这一点:
$result = mysql_query("SELECT something FROM somewhere WHERE some stuff");
while ($row = mysql_fetch_assoc($result)) {
// check values of certain fields, decide to perform more queries, or not
// tac
我有这样一种情况,我维护的站点调用plsql包/过程(Oracle11g)。该过程使用传入的参数构建一个动态sql字符串(将该字符串称为"v_select")。生成字符串后,将使用v_select动态sql字符串打开引用游标。下面是伪代码。
OPEN ref_cursor FOR v_select
USING variables set to input parameters ;
现在,该过程有一个异常块(当其他的时候)来捕获任何异常。在异常块中,任何错误都会写入数据库中的表中。如果在执行动态sql时发生错误,异常块似乎不会捕获错误(错误表中没有插入任何条目),但我可以在.n
我有以下疑问:
update tblwerknemerdienst toUpdate
set datumtot = (select subdate(datumvanaf,1)
from (select * from tblwerknemerdienst) nextDienst
where nextDienst.Werknemer = toUpdate.Werknemer
and nextDienst.datumvanaf > toUpdate.DatumVanaf
order by DatumVanaf
LIMIT 1)
WHERE DatumTo
我有一个过程,它的结构如下:
PROCEDURE broker(prm_qgent in varchar2, prm_cursor out sys_refcursor)
IS
mmy_query varchar(200);
BEGIN
OPEN prm_cursor FOR SELECT * FROM DUAL;
mmy_query :='SELECT *some dynamic query* where 1=1';
if prm_agent is not null then
mmy_query := mmy_query ||'AND age
我正在尝试从另一个存储过程调用一个存储过程。我尝试了不同的语法,但没有成功。
第一个存储过程返回一个表。对于测试,我只想从第二个存储过程返回我从第一个存储过程得到的内容。
第一个存储过程(SP01):
BEGIN
DECLARE C2 CURSOR WITH RETURN FOR
SELECT DISTINCT TBL.*
FROM LIB.TABLE1 TBL;
OPEN C2 ;
END
从c#调用它时,它工作得很好。
第二个存储过程(SP02):
BEGIN
DECLARE C2 CURSOR WITH RETURN FOR
CALL SP01();
OPEN C2 ;
END
我有一个很大的个人数据库(比如1000个人/每个人的5,000记录)。我想为每个人(在本例中是lat和long)写几个字段到一个文本文件(最好用逗号分隔)。
算法将如下所示:
foo=select distinct (id) from <table-name>;
for each id in foo
{
smaller_result= select lat,long from <table-name> where id=$id;
write smaller_result to a text file with unique name (e.g. id.txt);
}
我
我已经说过从数据库中获取值的几个语句,例如:
declare @intValue = 0;
use [databaseA]
select @intValue = @intValue + columnA from tableA where id = 5;
上面的语句必须是多数据库的,所以我想这样做:
declare @intValue = 0;
use [databaseA]
select @intValue = @intValue + columnA from tableA where id = 5;
use [databaseB]
select @intValue = @intValue
我有一个菜单,它是多个菜单项的父菜单,每个子菜单都有自己的子菜单。这种模式一直延续到5-6个垂直层次.我不想编写包含nth级子查询的查询,如下所示:
select id from jos_menu where parent in(select id from jos_menu where parent in(select id from jos_menu where parent=385 and published=1))
而且,我不想为此写脚本。在MySQL中应该有一些东西来获取这样的结果。
有人能指导我怎样才能以最好的方式实现我的结果吗?
我正在尝试将产品搜索从Cold聚变转移到MySQL存储过程中。
搜索有大约20个标准,是它所在站点的一个普通功能,所以想将其转换为存储的proc,因为需要做大量的预编译。
我想我找出了大部分的搜索标准。我在为最后一个问题而挣扎。
第一,冷融部分:
<cfquery datasource="dtb" name="get_pricelists">
SELECT sid, pricelist
FROM buyerList AS b
LEFT JOIN sellerList AS s ON s.sid = b.sid AND s.pass = b