加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

postgresql – 在另一个SELECT的WHERE子句中使用SELECT

发布时间:2020-12-13 16:23:11 所属栏目:百科 来源:网络整理
导读:我已经在PostrgreSQL的libpq上创建了一个草案远程应用程序.它表现良好,但我已经分析了应用程序的一般功能.对于我生成的每个最终业务结果,我会调用40 select子句(通过tcpip). 我有来自SQL-Server的回忆,提醒我最小化远程应用程序和数据库之间的交互次数.分析
我已经在PostrgreSQL的libpq上创建了一个草案远程应用程序.它表现良好,但我已经分析了应用程序的一般功能.对于我生成的每个最终业务结果,我会调用40 select子句(通过tcpip).

我有来自SQL-Server的回忆,提醒我最小化远程应用程序和数据库之间的交互次数.分析了我的选择后,我认为我可以使用连接将此数字减少为3个SELECT子句.但我不记得在另一个SELECT中使用SELECT结果的语法.

例如.:

SELECT * FROM individual
INNER JOIN publisher
ON individual.individual_id = publisher.individual_id
WHERE individual.individual_id = 'here I would like to use the results of a another select'

这个其他SELECT只是那种:

SELECT identifier FROM another_table WHERE something='something'

这是简化的表格布局,对于不同的item_types拒绝了很多次…(3种完全不同的类型,因此如果优化了3个SQL查询).

table passage
  id_passage PK
  business_field_passage bytea

table item
  id_item PK
  id_passage FK
  business_field_item text

table item_detail
  id_item_detail PK
  id_item FK
  business_field_item_detail text
  image_content bytea

一个id_passage有几个id_item.
一个id_item有几个id_item_detail.

你会怎么写的?
描述将一个选项重定向到另一个选项(如果有)的操作的名称是什么?

这是你的目标吗?确保要比较的字段具有可比性(即两个字段都是数字,文本,布尔值等).
SELECT * FROM Individual
INNER JOIN Publisher
ON Individual.IndividualId = Publisher.IndividualId
WHERE Individual.IndividualId = (SELECT someID FROM table WHERE blahblahblah)

如果您希望根据多个值进行选择:

SELECT * FROM Individual
INNER JOIN Publisher
ON Individual.IndividualId = Publisher.IndividualId
WHERE Individual.IndividualId IN (SELECT someID FROM table WHERE blahblahblah)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读