sql-为什么图中的SQL代码,from里面不用填其中一个来源表呢?

问题描述

为什么图中的SQL代码,from里面不用填其中一个来源表呢?

为什么图中的代码,
子查询里面的from只有orders这个表没有customers这个表呢?

我觉得括号里面from应该有customers,是因为我觉得SQL会先运行括号里面的内容.但实际顺序是怎样的呢?

解决方案

你这是SELECT里面的子查询,表示用customers.cust_id到orders里面去查找相关的订单数量
并且这时候的子查询每次SELECT只能是出一个值,不允许在select中的子查询查找出多个值,或者多列值。
改写为JOIN相当于:

SELECT  c.cust_name,
             c.cust_state,
                         o.order_cn AS orders
  FROM customers c
    LEFT JOIN (SELECT COUNT(*) AS order_cn,cust_id
                            FROM orders) o
            ON c.cust_id = o.cust_id
ORDER BY c.cust_name

解决方案二:

customers就是外层的那个 customers

解决方案三:

它的意思是,取出customers中每个客户的订单数量

解决方案四:

子查询就只是查询自己的表就行了

解决方案五:

sql不是按顺序执行的 如果都按着顺序执行 那写sql就没意义了

时间: 2024-09-20 00:03:47

sql-为什么图中的SQL代码,from里面不用填其中一个来源表呢?的相关文章

sql获取月份中的天数代码

sql获取月份中的天数代码,下面介绍了几种方法主要是讲了关于天数据获取与2月份特殊月份的处理哦. CREATE FUNCTION [dbo].[udf_DaysInMonth] ( @Date DATETIME ) RETURNS INT AS BEGIN RETURN CASE WHEN MONTH(@Date) IN (1,3,5,7,8,10,12) THEN 31 WHEN MONTH(@Date) IN (4,6,9,11) THEN 30 ELSE [dbo].[DaysOfFebr

求asp+access查询代码,实现图中要求的代码。

问题描述 求asp+access查询代码,实现图中要求的代码.

iOS实现从背景图中取色的代码_IOS

本文实例讲解了iOS从背景图中取色的代码,分享给大家供大家参考,具体内容如下 实现代码: void *bitmapData; //内存空间的指针,该内存空间的大小等于图像使用RGB通道所占用的字节数. static CGContextRef CreateRGBABitmapContext (CGImageRef inImage) { CGContextRef context = NULL; CGColorSpaceRef colorSpace; int bitmapByteCount; int

sql server-MFC语言中类似SQL server服务管理器里的交通灯控件?

问题描述 MFC语言中类似SQL server服务管理器里的交通灯控件? 有红.黄.绿三个颜色,可以通过属性控制,现在用checkbox模仿的,不太好看,谢谢 解决方案 http://www.pudn.com/downloads527/sourcecode/windows/detail2184472.html 解决方案二: 用第三方的checkbox界面库

在SQL Server 2005中编辑SQL Server 2000 DTS

今天为了体验一下SQL Server 2005的新功能,狠下心把本机的SQL Server 2000 干掉了,安装了一个SQL Server 2005,体验了一下很多很多的新功能,这时突然想起还有一些DTS改良工作还未完成,于是用SQL Server Management Studio 链接到SQL Server 2000服务器上,打开DTS包,正想编辑的时候,出现了错误误提示:编辑DTS包需要SQL Server 2000 DTS 设计器组件.要使用此功能,请安装特殊的WEB下载文件"SQL

SQL Serve 2005中的系统架构

架构 SQL Serve 2005中的系统架构SQL Server 2000中查询系统元数据的时候我们要通过很多系统表,例如sysobjects什么的,当然SQL Server中有很多系统存储过程,但是还是不能完全满足我们管理员的需求,所以只能查这些系统表,在SQL Server 2005中所有的系统表都被整合到了一个叫做sys的架构下,同时还有就是架构. 以下给一段范例代码,可以帮助大家在SQL Server 2005中查询出有哪些表引用了某张表, ----------------------

SQL Server 2005 中的批编译、重新编译和计划缓存问题(2)

查询计划缓存及各种 SET 选项(与 showplan 相关及其他) 各种 SET 选项--多数与 showplan 相关--以多种复杂的方式影响着查询计划和执行上下文的编译.缓存和重用.下表汇总了相关的详细信息. 应按如下顺序阅读该表中的内容.批处理通过表中第一列所指定的特定模式提交给 SQL Server.已提交的批处理的计划缓存中可能存在.也可能不存在已缓存的查询计划.第 2 列和第 3 列描述了存在已缓存的查询计划时的情况:第 4 列和第 5 列说明了不存在已缓存的查询计划时的情况.在每

Microsoft SQL Server 2000 中查询优化器使用的统计

Microsoft SQL Server 2000 中查询优化器使用的统计 Microsoft? SQL Server 2000 收集关于存储在数据库中的索引和列数据的统计信息.SQL Server 查询优化器使用这些统计信息来选择用于执行 INSERT.SELECT.DELETE 或 UPDATE 查询的最有效方案.本文说明了收集的数据类型.数据的存储位置以及用于创建.更新与删除统计的命令.默认情况下,SQL Server 2000 会自动创建和更新统计(当此类操作有用时).本文也概括介绍了如

mysql-求帮忙写一条sql,处方中开具五个药品的处方

问题描述 求帮忙写一条sql,处方中开具五个药品的处方 CREATE TABLE eng_cf( ---处方表 id VARCHAR(20), --这个是处方号 depart_id VARCHAR(30), department VARCHAR(30), bed_no VARCHAR(20)) CREATE TABLE eng_cf_item( --处方明细表 也就是药品表 cfid VARCHAR(20), drug VARCHAR(20), drug_name VARCHAR(20) ) 已