sql查询问题 同一张表 根据客户不同 查出不同数据

create table Message
(
ID1 varchar(10),
ClientID varchar(10),
Number int,
UserID varchar(10),
ResumeID varchar(10),
)
insert into Message select '1' ,'03', 1,'20','13'
insert into Message select '04','03',2,'20', '08'

create table Resume
(
ID2 varchar(10),
Name varchar(10),
UserID varchar(10)
)
insert into test2 select '13','李四','20'

insert into test2 select '08','张三','20'

create table Client
(
ID3 varchar(10),
Name varchar(10),
)
insert into test2 select '03'
insert into test2 select '10'

当 ClientID=03时
/*
要得到这样的报表:
id1 Number Name
13 1 '李四'
08 2 '张三'
*/

当 ClientID=10时
/*
要得到这样的报表:
id1 Number Name
13 0 '李四'
08 0 '张三'
*/

CREATE TABLE GB_USER.T_RESUME (
RESUME_ID VARCHAR2(25) NULL,
RESUME_NAME VARCHAR2(25) NULL,
USER_ID VARCHAR2(25) NULL
)
GO

CREATE TABLE GB_USER.T_MESSAGE (
ID VARCHAR2(25) NULL,
FK_CLIENT_ID VARCHAR2(25) NULL,
NUMBER VARCHAR2(25) NULL,
FK_USER_ID VARCHAR2(25) NULL,
FK_RESUME_ID VARCHAR2(25) NULL
)
GO

CREATE TABLE GB_USER.T_CLIENT (
CLIENT_ID VARCHAR2(25) NULL,
CLIENT_NAME VARCHAR2(25) NULL
)
GO

 select 
sum(if((name='张三'),1,0)) '张三',
sum(if((name='李四'),1,0)) '李四',
sum(if((name='王五'),1,0)) '王五'
 from shuju

这个应该类似吧,没数据不好想

你的需求描述可以具体一点,不知道下面这个SQL符不符合你的需求。
select
R.字段1
R.字段2 //把你要查询的所有的resume的字段都写上
R.字段N
FROM
tb_RT_Resume resume R,
dbo.tb_RT_Message M,
dbo.tb_RT_Client C
where
M.RID = R.ID
AND
M.ClientID = C.ID

AND
M.Type=1
AND
(C.ID = 你要查询的那个账户的Id OR M.num = 0)

当 ClientID=03时
/*
要得到这样的报表:
id1 Number Name
13 1 '李四'
08 2 '张三'
/
当 ClientID=10时
/

要得到这样的报表:
id1 Number Name
13 0 '李四'
08 0 '张三'
*/

图片说明

图片说明