标签: join

查询指定的连接提取,但提取的关联的所有者不在选择列表中

我正在选择两个id列但指定了错误:

org.hibernate.QueryException: **query specified join fetching, but the owner of the fetched association was not present in the select list** 

[FromElement{explicit,not a collection join,fetch join,fetch non-lazy properties,classAlias=r,role=null,tableName=REVISIONS,tableAlias=revision1_,origin=ENTITY_CHANGED_IN_REVISION entitychan0_,columns={entitychan0_.REV_ID ,className=ru.csbi.registry.domain.envers.Revision}}] [ select ec.id as entityChangeId, r.id as revisionId from ru.csbi.registry.domain.envers.EntityChange as ec  inner join fetch ec.revision as r  where ec.groupEntityId = :groupEntityId and ec.groupName = :groupName  and r.timestamp < :entityDateFrom  and r.timestamp > :entityDateTo  and (        ec.revisionType in (0, 5, 1, 4, 2 )       and not ( ec.otherGroupEntityModified = false and …
Run Code Online (Sandbox Code Playgroud)

hibernate join fetch

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

将多个子行组合成一行MYSQL

在此先感谢,我似乎无法得到它!

我有两张桌子

Ordered_Item

ID | Item_Name
1  | Pizza
2  | Stromboli

Ordered_Options

Ordered_Item_ID | Option_Number | Value
        1               43         Pepperoni
        1               44         Extra Cheese
        2               44         Extra Cheese

我想要输出的是一个mysql查询就是这个效果

产量

ID | Item_Name | Option_1 | Option_2
1    Pizza       Pepperoni  Extra Cheese
2    Stromboli     NULL     Extra Cheese

我尝试了很多以语法错误结尾的选项,我尝试过group_concat,但那并不是我想要的.我在下面有一个粗略的例子,我认为可能是一个开始.我每次都需要选项以相同的顺序.在收集信息的程序中,没有办法可靠地确保会发生这种情况.是否可以根据选项号将它们连接起来.此外,我知道我将永远不会有超过5个选项,所以静态解决方案将起作用

Select Ordered_Items.ID,
    Ordered_Items.Item_Name,
FROM Ordered_Items
    JOIN (SELECT Ordered_Options.Value FROM Ordered_Options Where Option_Number = 43) as Option_1 
        ON Ordered_Options.Ordered_Item_ID = Ordered_Item.ID
    JOIN (SELECT Ordered_Options.Value FROM Ordered_Options Where Option_Number = 44) as Option_2 …
Run Code Online (Sandbox Code Playgroud)

mysql select join

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

MongoDB一次查询多个集合

users
{
 "_id":"12345",
 "admin":1
},
{
 "_id":"123456789",
 "admin":0
}

posts
{
 "content":"Some content",
 "owner_id":"12345",
 "via":"facebook"
},
{
 "content":"Some other content",
 "owner_id":"123456789",
 "via":"facebook"
}
Run Code Online (Sandbox Code Playgroud)

这是我的mongodb的样本.我想获得所有帖子的"via"属性等于"facebook"并由admin发布("admin":1).我无法弄清楚如何获取此查询.由于mongodb不是关系数据库,我无法进行连接操作.可能是什么解决方案?

collections join mongodb

64
推荐指数
4
解决办法
12万
查看次数

Array Join vs String Concat

哪种方法更快?

阵列加入:

var str_to_split = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z";
var myarray = str_to_split.split(",");

var output=myarray.join("");
Run Code Online (Sandbox Code Playgroud)

String Concat:

var str_to_split = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z";
var myarray = str_to_split.split(",");

var output = "";
for (var i = 0, len = myarray.length; i<len; i++){
    output += myarray[i];
}
Run Code Online (Sandbox Code Playgroud)

javascript arrays performance connection-string join

63
推荐指数
5
解决办法
8万
查看次数

应用左连接之前的过滤表

我有2个表,我想在2个表连接在一起之前过滤1个表.

客户表:

   ????????????????????
   ? Customer ? State ?
   ????????????????????
   ? A        ? S     ?
   ? B        ? V     ?
   ? C        ? L     ?
   ????????????????????
Run Code Online (Sandbox Code Playgroud)

参赛表:

   ???????????????????????????????
   ? Customer ? Entry ? Category ?
   ???????????????????????????????
   ? A        ?  5575 ? D        ?
   ? A        ?  6532 ? C        ?
   ? A        ?  3215 ? D        ?
   ? A        ?  5645 ? M        ?
   ? B        ?  3331 ? A        ?
   ? B        ?  4445 ? D        ?
   ??????????????????????????????? …
Run Code Online (Sandbox Code Playgroud)

sql join filter where-clause

62
推荐指数
2
解决办法
5万
查看次数

Hibernate Criteria加入3个表

我正在寻找一个hibernate标准来获得以下内容:

Dokument.class映射到Role roleId

Role.class有一个ContactPerson contactId

Contact.class FirstName LastName

我想在Contact类中搜索First或LastName,并检索连接的Dokuments列表.

我尝试过这样的事情:

session.createCriteria(Dokument.class)
.setFetchMode("role",FetchMode.JOIN)
.setFetchMode("contact",FetchMode.JOIN)
.add(Restrictions.eq("LastName","Test")).list();
Run Code Online (Sandbox Code Playgroud)

我得到一个错误无法解决类"Dokument"的属性"LastName"

有人可以解释为什么连接搜索Dokument而不是所有连接表?在此先感谢您的帮助!

hibernate join criteria

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

MySQL LEFT JOIN 3表

我有3张桌子:

Persons (PersonID, Name, SS)
Fears (FearID, Fear)
Person_Fear (ID, PersonID, FearID)

现在我想列出每个人与他们有任何恐惧(可能是多重恐惧,但也可能没有).即使一个人没有与他们有关联的恐惧,也必须显示人员表.

我想我需要做LEFT JOIN,但我的代码似乎不起作用:

SELECT persons.name, 
       persons.ss, 
       fears.fear 
FROM   persons 
       LEFT JOIN fears 
              ON person_fear.personid = person_fear.fearid 
Run Code Online (Sandbox Code Playgroud)

我在这做错了什么?

mysql sql join

60
推荐指数
5
解决办法
25万
查看次数

没有加入的生活......理解和共同的实践

很多"BAW"(大屁股网站)正在使用数据存储和检索技术,这些技术依赖于带有索引的巨大表,并使用在查询中不会/不能使用JOIN的查询(BigTable,HQL等)处理可伸缩性和分片数据库.当你有大量和非常相关的数据时,它是如何工作的?

我只能推测,这种加入的大部分必须在应用程序方面完成,但这不会开始变得昂贵吗?如果您必须对几个不同的表进行多次查询以获取要编译的信息,该怎么办?是不是多次开始变得比仅仅使用连接更昂贵的数据库?我想这取决于你有多少数据?

对于常用的ORM,它们如何处理无法使用连接?今天在大量使用的ORM中是否有对此的支持?或者大多数必须接近这一级别数据的项目是否倾向于自行推出?

所以这不适用于我现在正在进行的任何项目,但现在已经有几个月了,我只能猜测"最佳实践"是什么.我从来没有必要在任何项目中解决这个问题,因为他们从未达到过需要的规模.希望这个问题能帮助其他人......

如下所述,ORM在没有连接的情况下"无法正常工作".是否有其他数据访问层已经可供处理此级别数据的开发人员使用?

编辑: 有些澄清,Vinko Vrsalovic说:

"我相信窃笑者想要讨论NO-SQL,其中事务数据被非规范化并在Hadoop或BigTable或Cassandra方案中使用."

这正是我所说的.

抓住xkcd参考的人的奖励积分.

orm hadoop join bigtable nosql

59
推荐指数
3
解决办法
3122
查看次数

ANSI JOIN与非ANSI JOIN查询的执行方式是否不同?

我在~7000行T-SQL存储过程中有我的业务逻辑,其中大多数都有下一个JOIN语法:

SELECT A.A, B.B, C.C
FROM aaa AS A, bbb AS B, ccc AS C
WHERE
    A.B = B.ID
AND B.C = C.ID
AND C.ID = @param
Run Code Online (Sandbox Code Playgroud)

如果我用这个替换这样的查询,我会获得性能增长:

SELECT A.A, B.B, C.C
FROM aaa AS A
JOIN bbb AS B
   ON A.B = B.ID
JOIN ccc AS C
   ON B.C = C.ID
   AND C.ID = @param
Run Code Online (Sandbox Code Playgroud)

或者他们是一样的?

sql t-sql sql-server join

59
推荐指数
2
解决办法
8万
查看次数

在连接表上使用LIMIT 1连接MySQL

我想加入两个表,但只能获得table1上每条记录的table2记录

例如:

SELECT c.id, c.title, p.id AS product_id, p.title
FROM categories AS c
JOIN products AS p ON c.id = p.category_id
Run Code Online (Sandbox Code Playgroud)

这会让我记录下来products,这不是我想要的.我想要每个类别1个[第一个]产品(我sort在产品领域有一个专栏).

我该怎么做呢?

mysql join limit

59
推荐指数
5
解决办法
10万
查看次数