如何编写查询以通过子查询从表中获取数据?

时间:2018-12-05 11:08:58

标签: java mysql sql hibernate

案例是我有一个访问表和一个lab_order表,而lab_order表用于存储具有visit_id,test_id,lab_analyte_id的订单,其中test和lab_analyte是差异表。

现在,我必须找出未下令访问的Lab_Analyte。并找出我有lab_analyte id,因此我需要用lab_analyte_id检查lab_order表是否存在记录,并作为回报我要访问。

3 个答案:

答案 0 :(得分:0)

将其谷歌搜索。您将获得许多教程站点,任何参考!!

  

https://www.w3schools.com/sql/sql_any_all.asp

     

https://www.tutorialspoint.com/sql/sql-sub-queries.htm

     

https://www.dofactory.com/sql/subquery

答案 1 :(得分:0)

1)您的联接不正确,如果您使用的是左联接,则需要指定一个打开条件,当前联接不是左联接,而仅仅是交叉联接。

Client Version: version.Info{
Major:"1", 
Minor:"12", 
GitVersion:"v1.12.2",
GitCommit:"17c77c7898218073f14c8d573582e8d2313dc740",
GitTreeState:"clean", 
BuildDate:"2018-10-24T06:54:59Z", 
GoVersion:"go1.10.4", 
Compiler:"gc", 
Platform:"linux/amd64"
}
Server Version: version.Info{
Major:"1", 
Minor:"12", 
GitVersion:"v1.12.2",
GitCommit:"17c77c7898218073f14c8d573582e8d2313dc740",
GitTreeState:"clean", 
BuildDate:"2018-10-24T06:43:59Z", 
GoVersion:"go1.10.4", 
Compiler:"gc", 
Platform:"linux/amd64"
}

如果没有聚合函数,分组依据也会失败

答案 2 :(得分:0)

# This is a  comment
GET /_search
{
  "query": {
    "match_all": {}
  }
}

# This is another comment
POST /index/_delete_by_query
{
  "query": {
    "match": {
      "name": "abra ka dabra"
    }
  }
}

每次将一条记录插入到SELECT LAB_ANALYTE_ID FROM LAB_ANALYTE WHERE LAB_ANALYTE_ID NOT IN (SELECT LAB_ANALYTE_ID FROM LAB_ORDER) 表中时,都会为该记录生成一个LAB_ORDER。我们可以使用non-null LAB_ANALYTE_ID子句从结果中排除那些LAB_ANALYTE_IDs