空字符串用单引号.不用双引号.
int是数值型..怎么能赋字符串值?第一眼看到这两个问题.
int是数值型..怎么能赋字符串值?第一眼看到这两个问题.
解决方案 »
- SQL 2008 删除登录记录
- 我希望得出关联度大于等于n的记录
- 新人求助,超新人。
- 误删了一些数据,如何从备份的数据库中恢复
- 存储过程与临时表问题:如何可以不建立临时表而将存储过程的数据导入到临时表?
- 神秘问题!存储过程是这样死的!
- 为什么我安装sqlserver的时候出现"packagefortheweb error错误信息,遇到多次了,怎么解决呢?
- 从未遇到的问题?
- 真是个难题,一下午的思考都没有结果,拿出来共享。
- High scores for the examples codes by using VB to manage SQL Server
- 【all】又是变量的问题
- 在线求助--精确取得时间
然后给第二个Select 用,得到想要的ID。
第三个SELECT才是我要的数据。前两个SELECT肯定都值。
returns table
as
return ( select * from c where a2 = (select top 1 a.a2 from c a,c b where a.id=b.a3 and b.a2 = @a1)
returns @r table (...) --这里把表结构写清楚
as
begin
declare @Code int
set @Code = ""
SELECT TOP 1 @Code = a3 FROM c WHERE (a2 = @a1) //关联ID 父级的其中一个ID
SELECT TOP 1 @Code = a2 FROM c WHERE (ID = @Code) //父帐号
insert @r SELECT * FROM c WHERE (a2 = @Code) // 父帐号相关信息
return
END
returns table
as
return ( select * from c where a2 = (select top 1 a.a2 from c a,c b where a.id=b.a3 and b.a2 = @a1))
的执行效率和分开查的区别很大吧。
因为a.id=b.a3 可能有 NNNN条如果
select top 1 a.a2 from c a,c b where b.a2 = @a1 and a.id=b.a3这样子是不是先找到一行。在对比这行?一共就2条数据
FROM a b INNER JOIN
a c ON c.b1 = 'a2' AND b.ID = c.AID是不是要快于 SELECT TOP 1 b.b1
FROM a b INNER JOIN
a c ON b.ID = c.AID AND c.b1 = 'a2'
我的理解是先执行内嵌