求一SQL语句

晓筱时代 2008-12-21 12:03:32
表activity:
id(主键), countryCode(外键), activityName
表country :
countryCode(主键), countryName
我的问题是用一个select语句查询activity和country表,显示出activityName和countryName,当activity表中的countryCode为NULL的时候,显示ALL。
望高手指点,谢谢。
...全文
87 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
lintf1986 2008-12-21
  • 打赏
  • 举报
回复
select activityName,isnull(countryName,'ALL') as countryName
from activity
right join country
on activity.countryCode = countryb.countryCode
-狙击手- 2008-12-21
  • 打赏
  • 举报
回复
select activityname,isnull(countryname,'ALL') as countryname
from activity a
right join country b
on a.countryCode = b.countryCode


举点示例数据来看看是什么意思 
-狙击手- 2008-12-21
  • 打赏
  • 举报
回复
select activityname,isnull(countryname,'ALL') as countryname
from activity a
left join country b
on a.countryCode = b.countryCode
pt1314917 2008-12-21
  • 打赏
  • 举报
回复
[Quote=引用楼主 oyl822 的帖子:]
表activity:
id(主键), countryCode(外键), activityName
表country :
countryCode(主键), countryName
我的问题是用一个select语句查询activity和country表,显示出activityName和countryName,当activity表中的countryCode为NULL的时候,显示ALL。
望高手指点,谢谢。
[/Quote]


select a.countryName,activityName=isnull(b.activityName,'ALL') from country a left join activity b
on a.countryCode=b.countryCode

mengxj85 2008-12-21
  • 打赏
  • 举报
回复
学习
[Quote=引用 8 楼 wufeng4552 的回复:]
sql中isnull的用法.
语法

ISNULL ( check_expression , replacement_value )


备注
如果 check_expression 不为 NULL,则返回它的值;否则,在将 replacement_value 隐式转换为 check_expression 的类型(如果这两个类型不同)后,则返回前者。

参数
check_expression

将被检查是否为 NULL 的表达式。check_expression 可以为任何类型。

replacement_value

当 check_expression 为 NULL 时要返回…
[/Quote]
水族杰纶 2008-12-21
  • 打赏
  • 举报
回复
sql中isnull的用法.
语法

ISNULL ( check_expression , replacement_value )


备注
如果 check_expression 不为 NULL,则返回它的值;否则,在将 replacement_value 隐式转换为 check_expression 的类型(如果这两个类型不同)后,则返回前者。

参数
check_expression

将被检查是否为 NULL 的表达式。check_expression 可以为任何类型。

replacement_value

当 check_expression 为 NULL 时要返回的表达式。replacement_value 必须是可以隐式转换为 check_expresssion 类型的类型。

返回类型
返回与 check_expression 相同的类型。

示例
A. 将 ISNULL 与 AVG 一起使用
以下示例查找所有产品的重量平均值。它用值 50 替换 Product 表的 Weight 列中的所有 NULL 项。

复制代码
USE AdventureWorks;
GO
SELECT AVG(ISNULL(Weight, 50))
FROM Production.Product;
GO
水族杰纶 2008-12-21
  • 打赏
  • 举报
回复
isnull(countryCode,'ALL')
ws_hgo 2008-12-21
  • 打赏
  • 举报
回复
/*
表activity:
id(主键), countryCode(外键), activityName
表country :
countryCode(主键), countryName
*/
select Ac.activityName,isnull(Ac.countryCode,null),Co.countryName
from activity Ac join country Co on Ac.countryCode=Co.countryCode
win7cc 2008-12-21
  • 打赏
  • 举报
回复
没错啦``
wang7655 2008-12-21
  • 打赏
  • 举报
回复
楼上的是解答

主要是isnull(countryName,'ALL') as countryName

其他的都是两张表的连接查询!

22,298

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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