SQL语句,又见SQL语句!

yliang82 2005-08-10 03:02:48
有个表用来存储哪个人在哪天值班了。数据字段如下
name duty_date

在一个月里面,有可能有的人会值班2次。现在我想把这个月里的值班的人名提出来
SELECT Name
FROM Duty_record
WHERE (YEAR(Duty_date) = '2005') AND (MONTH(Duty_date) = '8')
GROUP BY Name
但是有个问题,这样提出来的人名单并不是按着值班的顺序排下来的,怎么才能让人名按照从1号开始的顺序排下来呢?
...全文
82 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
shine2000 2005-08-10
  • 打赏
  • 举报
回复
order by duty_date
haver.G 2005-08-10
  • 打赏
  • 举报
回复
yliang82() 呵呵...不是吧,你应该没试过我这语句吧??

听你这话,哎,Order by哪里会要与Select出来的字段对应上呢?只要表里有就是了.

:)凡事要多试试,如果,万一我的方法是对的,你就给错过了哦.

做东西,就是要多写多试才行.OK?!
stefli 2005-08-10
  • 打赏
  • 举报
回复
嘻嘻,看了下,你这个是不是就是一个Order By 时间的问题哦!
stefli 2005-08-10
  • 打赏
  • 举报
回复
DateDiff就是判断是不是本月的数据!

用Group By分组,然后再筛选。
yliang82 2005-08-10
  • 打赏
  • 举报
回复
ghaihua(晨昕) 你这个方法肯定不行,因为在select里没提取duty_date所以肯定没办法用order by duty_date
yliang82 2005-08-10
  • 打赏
  • 举报
回复
我后来用了这个方法:
因为我会在前面算出值班人的个数,所以就用了:
sql="SELECT TOP "&gs&" * FROM Duty_record WHERE (YEAR(Duty_date) = '"&P_Year&"') AND (MONTH(Duty_date) = '"&P_Month&"') ORDER BY Duty_date"

大家还有其他的方法吗?
yliang82 2005-08-10
  • 打赏
  • 举报
回复
我后来用了这个方法:
因为我会在前面算出值班人的个数,所以就用了:
sql="SELECT TOP "&gs&" * FROM Duty_record WHERE (YEAR(Duty_date) = '"&P_Year&"') AND (MONTH(Duty_date) = '"&P_Month&"') ORDER BY Duty_date"

大家还有其他的方法吗?
haver.G 2005-08-10
  • 打赏
  • 举报
回复
,哦,,我忘了"=0"了,是这样的.

select Name from duty_Record where datediff(month,duty_date,getdate)=0 Group By Name order by duty_date
haver.G 2005-08-10
  • 打赏
  • 举报
回复
select Name from duty_Record where datediff(month,duty_date,getdate) Group By Name order by duty_date

试试.

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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