首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

求个SQL查询解决方法

2012-01-13 
求个SQL查询表结构如:nameaddressdistrictcityprovincecountryzhou建新东路江北区重庆市重庆市中国yang什

求个SQL查询
表结构如:
name       address       district     city         province     country  
zhou       建新东路     江北区         重庆市     重庆市         中国
yang       什么路         什么区         什么市     四川省         中国
要求当province   等于city时只显示如:中国重庆市江北区建新东路
不等的时候就显示如:中国四川省什么市什么区什么路
用一条sql语句实现
谢谢了

[解决办法]
select country+province+case when city=province then ' ' else city end+district+address 地址 from 表
[解决办法]
SELECT
country+
CASE WHEN province =city THEN
city
ELSE
province+city
END +
district+address
case when city=province then ' ' else city end+district+address 地址 from 表

[解决办法]
select city=case city when province then ' ' else city end,...
[解决办法]
case when 语句

[解决办法]
select country+province+case when city=province then ' ' else city end+district+address 地址 from 表
[解决办法]
create table T(name varchar(10), address varchar(10), district varchar(10), city varchar(10), province varchar(10), country varchar(10))
insert T select 'zhou ', '建新东路 ', '江北区 ', '重庆市 ', '重庆市 ', '中国 '
union all select 'yang ', '什么路 ', '什么区 ', '什么市 ', '四川省 ', '中国 '


select country+province+(case when province=city then ' ' else city end)+district+address
from T

--result
--------------------------------------------------
中国重庆市江北区建新东路
中国四川省什么市什么区什么路

(2 row(s) affected)


[解决办法]
select country+province+(case when province=city then ' ' else city end)+district+address from tablename

热点排行