有两个表
订货总表(订货编号,订货时间,.....订货总金额)
订货明细表(订货编号,....是否到货)
我想查询出订货明细表中所有部分到货的订货总表的所有字段,谢谢。

解决方案 »

  1.   

    select * from 订货总表 where 订货编号 in (select 订货编号 from 订货明细表 )
      

  2.   

    select * from 订货总表 where 订货编号 in (select 订货编号 from 订货明细表 where
    是否到货='部分到货'
     )
      

  3.   

    select A.* 
    from 订货总表 A LEFT JOIN 订货明细表 B ON A.订货编号=B.订货编号 
    AND B.是否到货='是'
      

  4.   

    订货总表(订货编号,订货时间,.....订货总金额) 
    0001,2009-07-01,.....,200
    0002,2009-07-02,.....,300
    0003,2009-07-03,.....,500
    订货明细表(订货编号,....是否到货)
    0001,....A商品,否
    0001,....d商品,否
    0002,....A商品,是
    0002,....b商品,是
    0002,....c商品,是
    0003,....c商品,是
    0003,....e商品,否
     查询的结果应为:
    0003,2009-07-03,.....,500
      

  5.   

    求SQL,
    有两个表 
    订货总表(订货编号,订货时间,.....订货总金额) 
    订货明细表(订货编号,....是否到货) 
    我想查询出订货明细表中所有部分到货的订货总表的所有字段,谢谢。
    例如:
    订货总表(订货编号,订货时间,.....订货总金额) 
    0001,2009-07-01,.....,200 
    0002,2009-07-02,.....,300 
    0003,2009-07-03,.....,500 
    订货明细表(订货编号,....是否到货) 
    0001,....A商品,否 
    0001,....d商品,否 
    0002,....A商品,是 
    0002,....b商品,是 
    0002,....c商品,是 
    0003,....c商品,是 
    0003,....e商品,否 
    查询的结果应为: 
    0003,2009-07-03,.....,500
      

  6.   

    select * from 订货总表 t 
    where  exists (select * from 订货明细表 where 订货编号=t.订货编号 group by 订货编号    
     having count(distinct 是否到货)>1
      

  7.   

    select A.* 
    from 订货总表 A 
    LEFT JOIN 
    (SELECT 订货编号 FROM 订货明细表 WHERE 订货编号 IN('是','否') GROUP BY 订货编号 HAVING COUNT(DISTINCT 是否到货)>1)AS  B 
      ON A.订货编号=B.订货编号 
      

  8.   

    select * from  订货总表 where 订货编号=(select 订货编号,是否到货 from 订货明细表 where 是否到货=1 ) 我把是否到货的值说一下,如果楼主这个字段是布尔值的话 就应该是0(false) 1(true) 在SQL2000中 以0和1存储  在SQL2005中 以true和false存储。
      

  9.   

    CREATE TABLE 订货总表(订货编号 VARCHAR(10),订货时间 DATETIME,订货总金额 MONEY) 
    INSERT 订货总表
    SELECT '0001','2009-07-01',200 UNION
    SELECT '0002','2009-07-02',300 UNION
    SELECT '0003','2009-07-03',500 
    CREATE TABLE 订货明细表2(订货编号 VARCHAR(10),商品 VARCHAR(10),是否到货 VARCHAR(10)) 
    INSERT 订货明细表2
    SELECT '0001','A商品','否'UNION
    SELECT '0001','d商品','否' UNION
    SELECT '0002','A商品','是' UNION
    SELECT '0002','b商品','是' UNION
    SELECT '0002','商品','是' UNION
    SELECT '0003','c商品','是' UNION
    SELECT '0003','e商品','否' ---DROP TABLE 订货总表select A.* 
    from 订货总表 A 
    INNER JOIN 
    (SELECT 订货编号 FROM 订货明细表2 WHERE 是否到货 IN('是','否') GROUP BY 订货编号 HAVING COUNT(DISTINCT 是否到货)>1)AS  B 
      ON A.订货编号=B.订货编号 
    订货编号       订货时间                                                   订货总金额                 
    ---------- ------------------------------------------------------ --------------------- 
    0003       2009-07-03 00:00:00.000                                500.0000(所影响的行数为 1 行)
      

  10.   

    -- =========================================
    -- -----------t_mac 小编-------------
       ---希望有天成为大虾---- 
    -- =========================================IF OBJECT_ID('订货总表') IS NOT NULL
      DROP TABLE 订货总表
    GO
    CREATE TABLE 订货总表(订货编号 varchar(10),订货时间 datetime,订货金额 int )
    go
    insert 订货总表 SELECT  
    '0001','2009-07-01',200 UNION ALL SELECT 
    '0002','2009-07-02',300 UNION ALL SELECT 
    '0003','2009-07-03',500 
    go
    IF OBJECT_ID('订货明细表') IS NOT NULL
      DROP TABLE 订货明细表
    GO
    CREATE TABLE 订货明细表(订货编号 varchar(10),商品编号 varchar(10),是否到货 char(2) )
    go
    insert 订货明细表 SELECT 
    '0001','A商品','否' UNION ALL SELECT 
    '0001','d商品','否' UNION ALL SELECT 
    '0002','A商品','是' UNION ALL SELECT 
    '0002','b商品','是' UNION ALL SELECT 
    '0002','c商品','是' UNION ALL SELECT 
    '0003','c商品','是' UNION ALL SELECT 
    '0003','e商品','否' select * from 订货总表 t 
    where  exists (select * from 订货明细表 where 订货编号=t.订货编号 group by 订货编号    
     having count(distinct 是否到货)>1

    /*------------
    订货编号       订货时间                    订货金额
    ---------- ----------------------- -----------
    0003       2009-07-03 00:00:00.000 500(1 行受影响)
    -------*/
      

  11.   

    select * from 订货总表 where exist (select * from 订货明细表 where 订货总表.订货编号=订货明细表.订货编号 and 订货明细表.是否到货='否')
      

  12.   

    feixianxxx,
    你的SQL code是如何贴到帖子里的?为什么我从MSSQL中copy到帖子里,就变成普通的字符了?