数据-SQLSERVER存储过程,请各位帮忙看一下

问题描述

SQLSERVER存储过程,请各位帮忙看一下

第一条SQL语句执行没有数据则执行第二条SQL语句,第二条SQL语句没有数据则执行第三条语句

下面是SQL语句

第一句

  select * into #TemPoraryBgoods from (
 select distinct a.company,a.code,a.name,b.hyprice,a.comeFrom,finish=ISNULL(a.finish,''),c.smallfanwei,
 dbo.GetDistancefromLnglat(113.273364,23.218945,lng,lat)/1000 as distance from Bgoods a,Bgoodsdtl b,shopperA c
 where a.company=c.SEQ and a.code=b.code and a.company=b.company and (c.lng between 113.224569198891
 and 113.322158801109) and (c.lat between 23.174029235794 and 23.263860764206) and a.KgCN='茶' and
 b.display in ('1','2','3')
 ) a where distance<=5
 select * from (
 select ROW_NUMBER() over (order by distance) as 'rowNumber',* from #TemPoraryBgoods
 ) k where rowNumber between 1 and 20
 select count(*) from #TemPoraryBgoods

第二句

  select * into #TemPorarydhgoods from (
 select distinct a.company,a.code,a.oldcode,a.name,b.hyprice,a.comeFrom,finish=ISNULL(a.finish,''),
 dbo.GetDistancefromLnglat(113.273364,23.218945,lng,lat)/1000 as distance from prodh.dbo.G1982 a,prodh.dbo.G1982dtl b,
 shq520.dbo.ghuser c where a.company=c.SEQ and a.code=b.code and (c.lng between 113.224569198891
 and 113.322158801109) and (c.lat between 23.174029235794 and 23.263860764206) and a.name like '%茶%'
 and b.dhdisplay='1'
 ) a where distance<=5
 select * from (
 select ROW_NUMBER() over (order by distance) as 'rowNumber',* from #TemPorarydhgoods
 ) k where rowNumber between 1 and 20
 select count(*) from #TemPorarydhgoods

第三句

  select distinct top 20 a.company,a.code,a.name,b.hyprice,a.comeFrom,finish=ISNULL(a.finish,''),c.smallfanwei,
 dbo.GetDistancefromLnglat(113.273364,23.218945,lng,lat)/1000 as distance from Bgoods a,Bgoodsdtl b,shopperA c
 where a.company=c.SEQ and a.code=b.code and a.company=b.company and b.display in ('1','2','3')
 and (c.lng between 113.224569198891 and 113.322158801109) and (c.lat between 23.174029235794
 and 23.263860764206) order by distance

解决方案

第一条SQL语句执行没有数据则执行第二条SQL语句,第二条SQL语句没有数据则执行第三条语句 这是你要实现的功能吧。
我大致说下吧,

BEGING
第一句
exception when nodatefound then
begin
第二句
exception when nodatefound then
第三句
end;
end;

大概结构就是这样。你去具体的写完试试。当第一句没数据时,会报异常,将其捕获,并进行处理,也就是执行第二句。如果还是没数据,继续报异常,继续处理。这是我的方法。请参考。

解决方案二:

希望你能把你的需求说出来

解决方案三:

我上面的就是代码啊。

时间: 2024-11-01 03:46:41

数据-SQLSERVER存储过程,请各位帮忙看一下的相关文章

new-新手求教 请大家帮忙看下源码

问题描述 新手求教 请大家帮忙看下源码 ------------------------DAL------------------------------------------------------------public List select(int UserID) { //初始化数据库连接对象 DateAccessLaye dbmyfile = new DateAccessLaye(); //初始化myfilemodel对象的集合实例 DataTable dsmf = dbmyfile

php 排序 选择排序法-请各位帮忙看下这个选择排序法哪里错了?

问题描述 请各位帮忙看下这个选择排序法哪里错了? //选择排序法 function selectsort(&$arr){ $temp=0; for($i=0;$i<count($arr)-1;$i++){ // 假设$arr($i)为最小值 $minval=$arr[$i]; //记录最小数的下标 $minindex=$i; for($j=$i+1;$j<count($arr);$j++){ //如果minval不是最小,把最小值传给minval:最小值下标传给minindex: if

java-这两种写法有什么差别???请大家帮忙看一看

问题描述 这两种写法有什么差别???请大家帮忙看一看 public void getBenjin() { if (null != benjin.getText()) { benjinD = Double.parseDouble(benjin.getText().toString()); } } public void getLilv() { if (null != lilv.getText()) { lilvD = Double.parseDouble(lilv.getText().toStri

android开发-recylerview添加head的问题,请各位帮忙看下咋解决

问题描述 recylerview添加head的问题,请各位帮忙看下咋解决 recylerview是纵向的,我在head中添加了一个横向滚动的recyclerview 当手指按在横向recyclerview下拉的时候纵向的recyclerview会向下跳动一段距离(不是正常滑动距离),怎么解决啊?开发-recylerview添加head的问题,请各位帮忙看下咋解决-recylerview"> 解决方案 VC++问题 帮忙解决哈C#程序集问题,请高手帮忙解决一下!!关于xslt的问题,请大家帮

c++/cli-C++ 加载 CTP DLL 报 LNK2001 错误,请大家帮忙看下,这个问题已经困扰几天了

问题描述 C++ 加载 CTP DLL 报 LNK2001 错误,请大家帮忙看下,这个问题已经困扰几天了 有个问题困扰我几天了,群里的大牛帮忙看下. 我加载ctp的dll时,会报下面这个错误. 谁知道原因,或者之前遇到过吗? 解决方案 删除所有的obj,重新编译下,检查下你的lib目录,对应的lib是否齐全.如果程序是自己写的,那么检查下函数的定义和调用是否一致. 解决方案二: 你需要工程中添加ctp的lib库文件.这样link才找得到.

c++新手,请大家帮忙看一看代码哪错了

问题描述 c++新手,请大家帮忙看一看代码哪错了 要求:用户输入一段话,输出每个单词出现的次数如输入:hello my friend . I miss you my friend输出:单词 次数 hello 1 my 2 friend 2 I 1 miss 1 you 1 #include #include #include using namespace std; int main(){ string sen;//用来记录用户输入的句子string word[100];int ab;int t

android应用-recylerview添加head的问题,请各位帮忙看下咋解决

问题描述 recylerview添加head的问题,请各位帮忙看下咋解决 recylerview是纵向的,我在head中添加了一个横向滚动的recyclerview 当手指按在横向recyclerview下拉的时候纵向的recyclerview会向下跳动一段距离(不是正常滑动距离),怎么解决啊? 解决方案 已解决,是headerView的问题 解决方案二: VC++问题 帮忙解决哈C#程序集问题,请高手帮忙解决一下!!关于xslt的问题,请大家帮忙看下,急啊! 解决方案三: http://bbs

Js代码失效问题,代码运行一段时间后,突然报错,请各位帮忙看一下,谢谢

问题描述 Js代码失效问题,代码运行一段时间后,突然报错,请各位帮忙看一下,谢谢 代码如下: <%@ page language="java" import="java.util.*" pageEncoding="gbk"%> <%@include file="/common/taglibs.jsp"%> <!DOCTYPE html> <html> <head> &

jvm-tomcat自动挂掉,在tomcat/bin/hs_err_pid4884.log如下,请高手帮忙看下。

问题描述 tomcat自动挂掉,在tomcat/bin/hs_err_pid4884.log如下,请高手帮忙看下. # A fatal error has been detected by the Java Runtime Environment: # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x7c95a1db, pid=5424, tid=2752 # JRE version: 6.0_45-b06 Java VM: Java HotSpo