同时使用Inner Join和Where子句获取数据时出现问题 [英] Problem in fetching data Using Inner Join and Where clause Simultaneously
本文介绍了同时使用Inner Join和Where子句获取数据时出现问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想在单个查询中同时执行两个操作,即INNER JOIN和WHERE子句的使用:
第一个用于内部连接,另一个用于Where子句: -
I want to perform two operations i.e, INNER JOIN and use of WHERE clauses simultaneously in single query:
first one is for Inner join another is for Where clause:-
SELECT rpd.registration_no,rpd.name, rpd.marriage_anniversary_date,fd.name
FROM rpd
INNER JOIN fd
ON rpd.registration_no=fd.registration_no and rpd.marriage_anniversary_date=fd.marriage_anniversary_date
SELECT registration_no,name, marriage_anniversary_date
FROM rpd WHERE ((DATEDIFF(dd, getdate(), DATEADD(yyyy, DATEDIFF(yyyy, marriage_anniversary_date, getdate()) + 1, marriage_anniversary_date))) % 366 <= 10) order by marriage_anniversary_date desc
这是为了在接下来的10天内获取生日。
我想为两个单独的查询...
This is for fetching birthdays in next 10 days.
I want to make one single query for both...
推荐答案
所以:
So do:
SELECT rpd.registration_no,rpd.name, rpd.marriage_anniversary_date,fd.name
FROM rpd
INNER JOIN fd
ON rpd.registration_no=fd.registration_no and rpd.marriage_anniversary_date=fd.marriage_anniversary_date
WHERE ((DATEDIFF(dd, getdate(), DATEADD(yyyy, DATEDIFF(yyyy, rpd.marriage_anniversary_date, getdate()) + 1, rpd.marriage_anniversary_date))) % 366 <= 10)
ORDER BY rpd.marriage_anniversary_date DESC
这么难吗?
Was that so difficult?
这篇关于同时使用Inner Join和Where子句获取数据时出现问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文