请问一下一个存储过程的写法,一定给分

wenziday 2003-05-07 10:39:21
两个表的详细说明如下:
Column(s) of "LG_OrderMeal" Table

Datatype Name Comment
bigint OrderID 定餐的索引
bigint RestaurantID 餐厅的索引
bigint FamilyMemberID 所有业主的索引
datetime OrderTime 预定就餐的日子
char(5) Time 预定早餐,午餐还是晚餐
int OrderType 预定的类型,如果为1则是预定厨师上门,为2则是预定到饭店用餐,为3则是预定送菜上门
int OrderTypeID 存放预定的桌位号或者厨师号或者为0(送菜上门)
int OrderRecipeID 预定的菜谱的索引
nvarchar(250) Content 定餐的具体说明


Column(s) of "LG_Table" Table

Datatype Name Comment
bigint TableID 座位的索引
bigint RestaurantID 餐厅的索引
int Count 该桌子可以坐多少人


问题:如何写一个存储过程实现找出一个餐厅所有的没有被预订的桌子
LG_OrderMeal这个表是订单
LG_Table是桌子
如果一个桌子被预订了
那么OrderMeal中OrderType=2,OrderTypeID将存放桌位号码


...全文
40 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
benxie 2003-05-08
  • 打赏
  • 举报
回复
学习ING。
select l.RestaurantID,l.OrderTime,t.TableID from LG_OrderMeal L, LG_Table T where L.ORDERTYPEID=2 AND L.ORDERTIME<GETDATE() AND
AND L.RESTAURANTID='某一餐厅'
wenziday 2003-05-07
  • 打赏
  • 举报
回复
thanks
miller3000 2003-05-07
  • 打赏
  • 举报
回复
限制具体的饭店少了一个条件,应该如下:
---限制具体其中一个饭店
select a.RestaurantID,TableID,maxCount from lg_table a,lg_ordermeal
where tableid not in(select ordertypeid from lg_ordermeal where ordertype=2 and restaurantid=111) and a.restaurantid=111
order by a.RestaurantID,TableID
miller3000 2003-05-07
  • 打赏
  • 举报
回复
int Count 该桌子可以坐多少人
修改为
int maxCount 该桌子可以坐多少人

---限制具体其中一个饭店
select a.RestaurantID,TableID,maxCount from lg_table a,lg_ordermeal
where tableid not in(select ordertypeid from lg_ordermeal where ordertype=2 and restaurantid=111)
order by a.RestaurantID,TableID

---不限制饭店的查询

select a.RestaurantID,TableID,maxCount from lg_table a,lg_ordermeal
where a.RestaurantID+tableid not in(select RestaurantID+ordertypeid from lg_ordermeal where ordertype=2)
order by a.RestaurantID,TableID
wenziday 2003-05-07
  • 打赏
  • 举报
回复
up

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧