User currentUser = [SELECT Id, Profile.Name,UserRole.Name FROM User WHERE Id = :UserInfo.getUserId()];

在子记录中查询父记录

实例1:

  1. Project__c pro = [SELECT Id, Name, Account__r.Name, P_Status__c, P_Plan_Complete_Date__c, P_Actual_Complete_Date__c
  2. FROM Project__c
  3. WHERE P_Status__c='Finishing'
  4. LIMIT 1];

其中Account为自定义的关系字段,Project为自定义的对象

实例2:

  1. Opportunity opp = [select Name, Account.Name from Opportunity limit 1];

2、在父记录中查询相关的子记录

  1. Account acc = [select name, (select name from opportunities) from account limit 1];
  2. system.debug('account name:' + acc.name);
  3. List opp = acc.opportunities;
  4. system.debug('number of opportunities:' + opp.size());
  5. for (opportunity op : opp) {
  6. system.debug('opportunity name:' + op.name);
  7. }

3、从junction对象里,查询与之master-details关系的两个details记录

数据模型图如下:


查询需求:查询会议名称日期及与之相关的发言人姓名。

  1. SELECT Session__r.Name,
  2. Session__r.Session_Date__c,
  3. Speaker__r.First_Name__c,
  4. Speaker__r.Last_Name__c
  5. FROM Session_Speaker__c
  6. ORDER BY Session__r.Session_Date__c,
  7. Session__r.Name

示例:

1-1 、下面查询返回与Closed Won的商机相关的Account的Id和Name:

  1. SELECT Id, Name FROM Account
  2. WHERE Id IN
  3. ( SELECT AccountId
  4. FROM Opportunity
  5. WHERE StageName = 'Closed Won'
  6. )

1-2、下面查询返回联系人来源于Web的商机Id

  1. SELECT Id FROM Opportunity
  2. WHERE AccountId NOT IN
  3. (
  4. SELECT AccountId
  5. FROM Contact
  6. WHERE LeadSource = 'Web'
  7. )

1-3、下面查询返回与Closed Won商机且与LeadSource为Web的联系人相关的Account的Id和Name

  1. SELECT Id, Name, Owner.UserName  FROM Account
  2. WHERE Id IN (SELECT AccountId FROM Contact WHERE LeadSource = 'Web')
  3. AND Id IN (SELECT Accountid FROM Opportunity WHERE StageName = 'Prospecting')

1-4、在查询语句中使用 [ORDER BY fieldOrderByList {ASC|DESC} [NULLS {FIRST|LAST}] ]
未使用Example:

  1. SELECT Tender_Project__r.Name, Bid_Amount__c, Is_Finalists_Competitive__c, Bid_Price_Fomula__c, Supplier_Bid_Price__c, Bidding_Ranking__c, CreatedDate
  2. FROM Advertiser_Tender_Relationship__c
  3. WHERE Tender_Project__c = 'a0L7F000000JyMk' <span style="color:#ff0000;">ORDER BY Bidding_Ranking__c ASC</span>

效果预览:

使用后Example:

  1. SELECT Tender_Project__r.Name, Bid_Amount__c, Is_Finalists_Competitive__c, Bid_Price_Fomula__c, Supplier_Bid_Price__c, Bidding_Ranking__c, CreatedDate
  2. FROM Advertiser_Tender_Relationship__c
  3. WHERE Tender_Project__c = 'a0L7F000000JyMk' <span style="color:#ff0000;">ORDER BY Bidding_Ranking__c ASC NULLS LAST</span>




047_SOQL 基本查询总结的更多相关文章

  1. 使用TSQL查询和更新 JSON 数据

    JSON是一个非常流行的,用于数据交换的文本数据(textual data)格式,主要用于Web和移动应用程序中.JSON 使用“键/值对”(Key:Value pair)存储数据,能够表示嵌套键值对 ...

  2. UWP 律师查询 MVVM

    APP简介 律师查询是基于聚合数据的律师查询接口做的,这个接口目前处于停用状态,但是,由于我是之前申请的,所以,还可以用,应该是无法再申请了. 效果图 开发 一.HttpHelper 既然是请求接口的 ...

  3. Elasticsearch 5.0 中term 查询和match 查询的认识

    Elasticsearch 5.0 关于term query和match query的认识 一.基本情况 前言:term query和match query牵扯的东西比较多,例如分词器.mapping ...

  4. ASP.NET Aries 入门开发教程4:查询区的下拉配置

    背景: 今天去深圳溜达了一天,刚回来,看到首页都是微软大法好,看来离.NET的春天就差3个月了~~ 回到正题,这篇的教程讲解下拉配置. 查询区的下拉配置: 1:查询框怎么配置成下拉? 在配置表头:格式 ...

  5. ASP.NET Aries 入门开发教程3:开发一个列表页面及操控查询区

    前言: Aries框架毕竟是开发框架,所以重点还是要写代码的,这样开发人员才不会失业,哈. 步骤1:新建html 建一个Html,主要有三步: 1:引入Aries.Loader.js 2:弄一个tab ...

  6. ExtJS 4.2 业务开发(二)数据展示和查询

    本篇开始模拟一个船舶管理系统,提供查询.添加.修改船舶的功能,这里介绍其中的数据展示和查询功能. 目录 1. 数据展示 2. 数据查询 3. 在线演示 1. 数据展示 在这里我们将模拟一个船舶管理系统 ...

  7. 深入理解MySql子查询IN的执行和优化

    IN为什么慢? 在应用程序中使用子查询后,SQL语句的查询性能变得非常糟糕.例如: SELECT driver_id FROM driver where driver_id in (SELECT dr ...

  8. ElasticSearch 5学习(10)——结构化查询(包括新特性)

    之前我们所有的查询都属于命令行查询,但是不利于复杂的查询,而且一般在项目开发中不使用命令行查询方式,只有在调试测试时使用简单命令行查询,但是,如果想要善用搜索,我们必须使用请求体查询(request ...

  9. 【初学python】使用python连接mysql数据查询结果并显示

    因为测试工作经常需要与后台数据库进行数据比较和统计,所以采用python编写连接数据库脚本方便测试,提高工作效率,脚本如下(python连接mysql需要引入第三方库MySQLdb,百度下载安装) # ...

  10. JdbcTemplate+PageImpl实现多表分页查询

    一.基础实体 @MappedSuperclass public abstract class AbsIdEntity implements Serializable { private static ...

随机推荐

  1. Agilepoint中的JS Method 封装

    /**================================================================================================= ...

  2. springboot启动类剔除扫描某个包

    // 排除api中不引数据库导致的报错包 @ComponentScan(excludeFilters = { @ComponentScan.Filter(type = FilterType.REGEX ...

  3. IO学习笔记7

    2.4 多路复用javaAPI 在上面我们简单java代码实现了多路复用,是一个单线程版的.讲上面的epoll代码复制到linux服务器中,使用strace追踪系统调用. javaAPI会根据系统类型 ...

  4. 摄像头的MIPI接口、DVP接口和CSI接口

    电脑摄像头接口是USB接口,智能手机的摄像头接口是MIPI接口,还有一部分的摄像头(比如说某些支持DVP接口的硬件)是DVP接口. USB是串行通用串行总线(Universal Serial Bus) ...

  5. 3 - 标准数据加密(DES)及其备选

    标准数据加密(DES)及其备选 我的博客 原书:<Understanding Cryptography: A Text book for Students and Practitioners&g ...

  6. WebSocket 使用记录

    WebSocket 主要解决的问题是 后端数据更新主动像前端推送数据所需依赖<dependency> <groupId>org.springframework.boot< ...

  7. pywinauto app自动化的实践

    from pywinauto import Application app = Application(backend='uia').start("notepad") # prin ...

  8. H5云图后台读写CAD文件-在线CAD,网页CAD,网页浏览编辑CAD

    说明 后台提供MxFileConvert.exe程序,它可以将CAD图纸转换成前台能加载显示的格式,程序调用方法见: https://help.mxdraw.com/?pid=32中的"如何 ...

  9. nginx日志按日期存储

    http {     include       mime.types;     default_type  application/octet-stream;     map $time_iso86 ...

  10. nginx,git,maven面试题

    1.简述一下什么是Nginx,它有什么优势和功能? Nginx是一个web服务器和方向代理服务器,用于HTTP.HTTPS.SMTP.POP3和IMAP协议.因 它的稳定性.丰富的功能集.示例配置文件 ...