得到这样的结果,用cross join !

create   table   t1   (xh   int   not   null   primary   key)该t1中只记录序号信息,现在有一变量@m,@m是取一个范围值比如  
  t1中有1、2、3、4、5时,而@m为1到3(@m只取正整数)时就而如下的记录,就好象交叉连接一样  
   
  f1   f2  
  1     1  
  2     1  
  3     1  
  4     1  
  5     1  
  1     2  
  2     2  
  3     2  
  4     2  
  5     2  
  1     3  
  2     3  
  3     3  
  4     3  
  5     3  
   
  如果@m的值存在一表中就可以用交叉连接了(不想将先将@m的值插入到表中),但是只有一个表,另一个时变量,该语句怎样写?  
 

 

用一个临时表就行了      
   
  set   rowcount   @m  
  select   id=identity(int,1,1)     into   #t   from   sysobjects   a,   sysobjects   b  
  set   rowcount   0  
   
  select   a.id   as   f1,b.id   as   f2   from   表   a   cross   join   #t   b   order   by     f2,f1  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值