SQLsever 两表连接,查询数据问题

zting1221 2012-05-28 04:20:58
我有两个表,一个是 课程信息表 C_ID, C_Style (编号,课程类型)
,另一个是 定课表,B_ID,C_ID,C_Style(定课id,课程信息id,课程类型)
我现在要实现的是 搜索出在C_Style=英语 的定课表中C_ID等于某一固定值且出现次数小于4的 课程信息表中的信息。
请教各大神们,怎么写?
...全文
127 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zting1221 2012-05-28
  • 打赏
  • 举报
回复
Count(1)<4 是C_ID 等于某固定值的计数吗
zting1221 2012-05-28
  • 打赏
  • 举报
回复
我按着上面的写了,出来的结果不对啊
  • 打赏
  • 举报
回复
不知道在你程序里面该怎么输入
zting1221 2012-05-28
  • 打赏
  • 举报
回复
哦,谢谢
我输入下面一行,说我字符串有问题,能帮我看一下原因吗

SqlDataSource1.SelectCommand = "select * from 课程信息表 where C_Style = '" + DropDownList1.Text + "' and C_ID in( select C_ID from 定课表 group by 定课表 where C_ID='" + Convert.ToInt32(TextBox3.Text) + "' having count(1)<4) ";
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

没太看明白,select 1 是什么意思下?能具体解释下吗,谢谢?
[/Quote]

select 1,where后面的条件成立返回1 ,不成立返回空
zting1221 2012-05-28
  • 打赏
  • 举报
回复
没太看明白,select 1 是什么意思下?能具体解释下吗,谢谢?
Mr_Nice 2012-05-28
  • 打赏
  • 举报
回复
SELECT  A.*
FROM 课程信息表 A
WHERE EXISTS ( SELECT 1
FROM 定课表 B
WHERE A.c_id = B.c_id
AND B.c_id = '???'
AND B.C_Style = '英语'
GROUP BY c_id ,
b_id
HAVING COUNT(1) < 4 )

34,588

社区成员

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

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