多表联合查询SQL语句
2011-12-21 17:06
316 查看
$tempSQL = "SELECT portfolio.bmi_no as bmi_no,portfolio.title1 as title1,portfolio.lname1 as lname1,portfolio.fname1 as fname1,member.login_name as login_id, portfolio.lname2 as lname2,portfolio.fname2 as fname2,portfolio.principle as principle,portfolio.email
as email,portfolio.policy_no as policy_no,portfolio_file.en_file as en_file,portfolio_file.en_enable as en_enable,policy_status.problem_type as problem_type
FROM `portfolio` LEFT JOIN `member` ON portfolio.full_name=member.full_name and portfolio.dob=member.dob
LEFT JOIN `policy_status` ON portfolio.policy_no = policy_status.policy_no AND policy_status.is_live =1
LEFT JOIN `policy_fund` ON portfolio.principle=policy_fund.principle AND portfolio.policy_no=policy_fund.policy_no AND policy_fund.is_live=1
LEFT JOIN `portfolio_file` on portfolio.bmi_no = portfolio_file.bmi_no AND ".$report_criteria;
解释之后的SQL语句:
SELECT
portfolio.bmi_no
AS
bmi_no,
portfolio.title1
AS
title1,
portfolio.lname1
AS
lname1,
portfolio.fname1
AS
fname1,
member.login_name
AS
login_id,
portfolio.lname2
AS
lname2,
portfolio.fname2
AS
fname2,
portfolio.principle
AS
principle,
portfolio.email
AS
email,
portfolio.policy_no
AS
policy_no,
portfolio_file.en_file
AS
en_file,
portfolio_file.en_enable
AS
en_enable,
policy_status.problem_type
AS
problem_type
FROM
`portfolio`
LEFT
JOIN `member`
ON portfolio.full_name
=
member.full_name
AND
portfolio.dob
=
member.dob
LEFT
JOIN `policy_status`
ON
portfolio.policy_no
=
policy_status.policy_no
AND
policy_status.is_live
=1
LEFT
JOIN `policy_fund`
ON
portfolio.principle
=
policy_fund.principle
AND
portfolio.policy_no
=
policy_fund.policy_no
AND
policy_fund.is_live
=1
LEFT
JOIN `portfolio_file`
ON
portfolio.bmi_no
=
portfolio_file.bmi_no
AND
portfolio_file.year
=
'2011'
AND
portfolio_file.month
=
'12'
LIMIT
0 ,
30
as email,portfolio.policy_no as policy_no,portfolio_file.en_file as en_file,portfolio_file.en_enable as en_enable,policy_status.problem_type as problem_type
FROM `portfolio` LEFT JOIN `member` ON portfolio.full_name=member.full_name and portfolio.dob=member.dob
LEFT JOIN `policy_status` ON portfolio.policy_no = policy_status.policy_no AND policy_status.is_live =1
LEFT JOIN `policy_fund` ON portfolio.principle=policy_fund.principle AND portfolio.policy_no=policy_fund.policy_no AND policy_fund.is_live=1
LEFT JOIN `portfolio_file` on portfolio.bmi_no = portfolio_file.bmi_no AND ".$report_criteria;
解释之后的SQL语句:
SELECT
portfolio.bmi_no
AS
bmi_no,
portfolio.title1
AS
title1,
portfolio.lname1
AS
lname1,
portfolio.fname1
AS
fname1,
member.login_name
AS
login_id,
portfolio.lname2
AS
lname2,
portfolio.fname2
AS
fname2,
portfolio.principle
AS
principle,
portfolio.email
AS
email,
portfolio.policy_no
AS
policy_no,
portfolio_file.en_file
AS
en_file,
portfolio_file.en_enable
AS
en_enable,
policy_status.problem_type
AS
problem_type
FROM
`portfolio`
LEFT
JOIN `member`
ON portfolio.full_name
=
member.full_name
AND
portfolio.dob
=
member.dob
LEFT
JOIN `policy_status`
ON
portfolio.policy_no
=
policy_status.policy_no
AND
policy_status.is_live
=1
LEFT
JOIN `policy_fund`
ON
portfolio.principle
=
policy_fund.principle
AND
portfolio.policy_no
=
policy_fund.policy_no
AND
policy_fund.is_live
=1
LEFT
JOIN `portfolio_file`
ON
portfolio.bmi_no
=
portfolio_file.bmi_no
AND
portfolio_file.year
=
'2011'
AND
portfolio_file.month
=
'12'
LIMIT
0 ,
30
相关文章推荐
- 对多表联合查询的SQl语句的改进,大幅提高查询性能
- 常用的SQL语句<三> 联合查询和高级用法
- sql语句一例:多表联合查询
- oracle联合查询并更新一个表字段的sql语句
- SQL语句对于多表联合查询重复字段的特殊语法处理
- sql语句多表联合查询(学生表/课程表/教师表/成绩表 )
- sql语句之UNION,联合查询
- oracle联合查询并更新一个表字段的sql语句
- sql语句的联合查询(join 用法)
- sql注入之联合语句查询
- SQL语句返回多表联合查询的结果集的数据条数
- 三表联合查询的sql语句
- 对多表联合查询的SQl语句的改进,大幅提高查询性能
- 又一个通用分页存储过程,支持表别名,多表联合查询SQL语句
- 又一个通用分页存储过程,支持表别名,多表联合查询SQL语句--转载
- sql联合查询 一条select语句 查询多个结果,显示
- 又一个通用分页存储过程,支持表别名,多表联合查询SQL语句--转载
- SQL查询语句--from--where--联合查询--连接--删除
- SQL语句——多表联合查询
- 对多表联合查询的SQl语句的改进,大幅提高查询性能 (转)