标签: outer-join

没有关系的JPA OUTER JOIN

我需要OUTER JOIN在JPA中由两个实体组成(说出主要,详细信息),但是这个问题是在实体级别上没有关系(并且我不想添加它)。

@Entity
class Master
{
    @Column(name="altKey")
    Integer altKey;
}

@Entity
class Detail
{
    @Column(name="altKeyRef")
    @Basic (optional = true)
    Integer altKeyRef;
}
Run Code Online (Sandbox Code Playgroud)
SELECT m, d FROM Master m OUTER JOIN ????? d.altKeyRef = m.altKey
Run Code Online (Sandbox Code Playgroud)

jpa outer-join

3
推荐指数
1
解决办法
3468
查看次数

linq中的左外连接

我有以下查询,但我不知道如何在表1上进行左外连接.

var query = (from r in table1
             join f in table2
                 on r.ID equals f.ID
             select new
             {     
                 r.ID, 
                 r.FirstName,
                 r.LastName,
                 FirstNameOnRecord = 
                     (f != null ? f.FirstName : string.Empty),
                 LastNameOnRecord = 
                     (f != null ? f.LastName : string.Empty),
                 NameChanged = 
                     (f != null 
                         ? (f.FirstName.CompareTo(r.FirstName) == 0 
                             && f.LastName.CompareTo(r.LastName) == 0) 
                         : false)
             }).ToList();
Run Code Online (Sandbox Code Playgroud)

c# linq outer-join

3
推荐指数
2
解决办法
1701
查看次数

PostgreSQL:左外连接语法

我正在使用PostgreSQL 8.4.6与CentOS 5.5,并有一个用户表:

# select * from pref_users where id='DE2';
 id  | first_name | last_name | female |      avatar      |        city         | lat | lng |           login            | last_ip | medals |           logout
-----+------------+-----------+--------+------------------+---------------------+-----+-----+----------------------------+---------+--------+----------------------------
 DE2 | Alex       |           | f      | 2_1280837766.jpg | ?. ????? ? ???????? |     |     | 2011-01-02 19:26:37.790909 |         |        | 2011-01-02 19:29:30.197062
(1 row)
Run Code Online (Sandbox Code Playgroud)

另一张表列出了他们每周在游戏中赢得的"虚拟货币":

# select * from pref_money where id='DE2';
 id  | money |   yw
-----+-------+---------
 DE2 |    66 | 2010-48
(1 row) …
Run Code Online (Sandbox Code Playgroud)

postgresql left-join outer-join

3
推荐指数
1
解决办法
2万
查看次数

Hibernate使用DetachedCriteria进行LEFT OUTER JOIN

我试图将以下SQL转换为Hibernate DetachedCriteria:

SELECT
    students0_.courseId AS courseId2_1_,
    students0_.studentId AS studentId1_,
    student1_.id AS id3_0_,
    student1_.href AS href3_0_,
    student1_.created AS created3_0_,
    student1_.email AS email3_0_,
    student1_.enabled AS enabled3_0_,
    student1_.firstName AS firstName3_0_,
    student1_.lastAccessed AS lastAcce8_3_0_,
    student1_.lastName AS lastName3_0_,
    student1_.password AS password3_0_,
    student1_.role AS role3_0_,
    student1_.username AS username3_0_ 
FROM
    course_students students0_ 
INNER JOIN
    users student1_ 
        ON students0_.studentId=student1_.id 
WHERE
    students0_.courseId IN (
        SELECT
            this_.id 
        FROM
            courses this_ 
        LEFT OUTER JOIN
            assignments assignment2_ 
                ON this_.id=assignment2_.courseId 
                AND (
                assignment2_.availabilityType='Available' 
                OR (
                    assignment2_.availabilityType='Range'
                    AND assignment2_.endDate>= NOW() 
                    AND assignment2_.startDate<= NOW()
                ) …
Run Code Online (Sandbox Code Playgroud)

hibernate outer-join detachedcriteria

3
推荐指数
1
解决办法
1万
查看次数

'LEFT JOIN'与'LEFT OUTER JOIN'

我知道确实没有什么区别,但是'LEFT JOIN'是ANSI表格还是有任何RDBMS会失败'LEFT JOIN'并要求'LEFT OUTER JOIN'.[我在这里问,所以我可以保存几次点击,填写表格等,以获得正确的ANSI标准!]

sql left-join outer-join ansi-sql

3
推荐指数
1
解决办法
3267
查看次数

为什么我的查询没有返回任何结果?

为什么这个sql查询只显示结果,如果他们在users_warnings中只有一行?

SELECT 
 u.id, 
 uw.warning 
FROM 
 users u
 INNER JOIN users_warnings uw ON (
  u.id = uw.uID
 )
LIMIT 21
Run Code Online (Sandbox Code Playgroud)

我希望向所有用户显示,但也会抓取users_warnings中的"警告"列,如果有的话.

mysql sql join inner-join outer-join

3
推荐指数
2
解决办法
127
查看次数

Postsgresql外部加入不按预期工作

一个看似简单的查询,我无法工作......

两个桌子的房间和可用性

Room         [id, title, beds]
Availability [room_id, date, bed_delta]
Run Code Online (Sandbox Code Playgroud)

客房配有固定的最多床位数.可用性描述Room.beds修改期间(向上或向下).

我正在尝试构建一个查询,对于给定的房间和给定的开始日期和持续时间将总和可用的床.

例如:

  • 1号房通常有2张床
  • 1小时,服用1张床
  • 预期结果是1

如果添加了与此日期时间范围重叠的另一个可用时段并进一步将床减少1,则预期结果为0.

感觉就像一个相对简单的查询:

  • LEFT OUTER JOIN房间到room_id的可用性
  • 按日期约束
  • 选择Room.beds - sum(Availability.bed_delta)

SELECT r.beds - coalesce(sum(a.bed_delta), 0) as beds_free
FROM room r
LEFT OUTER JOIN availability a ON (r.id = a.room_id)
WHERE date = '2012-01-01 09:00:00+01:00'
AND r.id = 2
GROUP BY r.id;
Run Code Online (Sandbox Code Playgroud)

此查询仅在匹配的行中返回availability.我期望的是id为== 2的房间的单行.

postgresql outer-join

3
推荐指数
1
解决办法
1632
查看次数

左连接和内连接之间的性能差异

左连接和内连接在性能方面有什么区别吗?我使用SQL Server 2012.

sql-server inner-join left-join outer-join sql-server-2012

3
推荐指数
2
解决办法
6174
查看次数

如何从data.table构造外部产品矩阵

我不知道如何解决这个问题,我唯一想到的就是蛮力循环,但是我什至不确定如何以data.table一种明智的方式循环遍历整个行。

我有一个双键data.table和一个基于这些键中第一个的相关矩阵。我需要通过查找任何给定对的相关性来建立所有元素的完整相关性矩阵,如果第二个键不匹配,则相关性为零。

简化示例:

library(data.table)
DT = data.table(Key1 = c("A", "A", "A", "B", "B", "C", "C"), Key2 = c(1,2,3,2,3,3,4), OtherData = "Irrelevant")
setkey(DT, Key2, Key1)
M = matrix(c(1.0, 0.4, 0.3, 
             0.4, 1.0, 0.2, 
             0.3, 0.2, 1.0), nrow = 3)
Run Code Online (Sandbox Code Playgroud)

所以我们的起始data.table看起来像:

> DT
   Key1 Key2  OtherData
1:    A    1 Irrelevant
2:    A    2 Irrelevant
3:    B    2 Irrelevant
4:    A    3 Irrelevant
5:    B    3 Irrelevant
6:    C    3 Irrelevant
7:    C    4 Irrelevant
Run Code Online (Sandbox Code Playgroud)

当A,B和C共享相同的Key2值时,它们的预定义相关矩阵由M给出:

> M
     [,1] …
Run Code Online (Sandbox Code Playgroud)

r matrix outer-join data.table

3
推荐指数
1
解决办法
281
查看次数

具有doctrine的查询生成器中的外连接

我有一个名为的实体PointsComptage.php,另一个名为Compteurs.php.

这是他们之间的关系:

// Compteurs.php 
/**
 * @var \PointsComptage
 *
 * @ORM\ManyToOne(targetEntity="PointsComptage", inversedBy="compteurs")
 * @ORM\JoinColumns({
 *   @ORM\JoinColumn(name="pointscomptage_id", referencedColumnName="id")
 * })
 */
private $pointsComptage;

/**
 * @var \Doctrine\Common\Collections\Collection
 *
 * @ORM\OneToMany(targetEntity="ParametresMesure", mappedBy="compteurs")
 */
private $parametresMesure;

/*  ...  */


// PointsComptage.php
/**
 * @var \Doctrine\Common\Collections\Collection
 *
 * @ORM\OneToMany(targetEntity="Compteurs", mappedBy="pointsComptage")
 */
private $compteurs;

/*  ...  */
Run Code Online (Sandbox Code Playgroud)

这是我的存储库实体中的查询,用于恢复具有一个pointComptage属性的compteurs:

$queryBuilder = $this->_em->createQueryBuilder();

$queryBuilder
  ->select ('c')
  ->from('MySpaceMyBundle:Compteurs', 'c')
  ->leftJoin('c.pointsComptage', 'pc')
  ->join('c.parametresMesure', 'pm')
  ->join('pm.typesUnite', 'tu')
  ->join('pm.typesParametre', 'tp')
  ->where('c.pointsComptage = pc.id')
  ->andWhere('pm.compteurs = c.id')
  ->andWhere('pm.typesUnite …
Run Code Online (Sandbox Code Playgroud)

left-join outer-join query-builder symfony doctrine-orm

3
推荐指数
1
解决办法
6643
查看次数