加入两个tabales并使用WHERE condision获取右表值的左表中的所有值。 [英] Join two tabales and get all values in left table using WHERE condision for right table value.
本文介绍了加入两个tabales并使用WHERE condision获取右表值的左表中的所有值。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有两个表Entity和EntityPoints
实体表
I have two tables Entity and EntityPoints
Entity table
EntityId | Name
1 | E1
2 | E2
3 | E3
EntityPoints表
EntityPoints Table
EntityId | QId |Points
1 | 1 |100
1 | 2 |200
2 | 2 |350
我的问题是使用这两个表如何使用实体表中的所有名称EntityPoints表的条件QId ...
我尝试使用以下代码,但它不包含所有实体名称表。我怎么能这样做?
my problem is using this two tables how to get all Names in Entity table using where condition for EntityPoints Table QId ...
I try with following code but it not contain all Names of Entity table.How can I do it ?
SELECT Entity.Name,Entity.EntityId,EntityPoints.QId,EntityPoints.Points
FROM Entity LEFT OUTER JOIN
EntityPoints ON Entity.EntityId = EntityPoints.EntityId
WHERE (EntityPoints.QId = 2)
添加了代码块 - OriginalGriff [/ edit]
[edit]Code block added - OriginalGriff[/edit]
推荐答案
尝试:
Try:
SELECT e.Name,e.EntityId,p.QId,p.Points
FROM Entity e
LEFT OUTER JOIN
(SELECT * FROM EntityPoints WHERE EntityPoints.QId = 2) p
ON e.EntityId = p.EntityId
在条件允许的情况下也使用它。
use this too in where condition..
OR EntityPoints.QId = NULL
这篇关于加入两个tabales并使用WHERE condision获取右表值的左表中的所有值。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文