请教几个SQL问题?1、SELECT X,Y,Z FROM TABLE1
其中,Z,我可不可以用一个SQL语句来赋值,如果可以该如何写呢?例如赋SELECT max(z) from table2
2、SELECT X,Y,Z FROM THABLE1 WHERE Z=(SELECT Z FROM TABLE2 WHERE A=变量X)
其中‘变量X’为X的值,这里应该如何写呢?
谢谢!!!!

解决方案 »

  1.   

    1、SELECT X,Y,Z FROM TABLE1
    其中,Z,我可不可以用一个SQL语句来赋值,如果可以该如何写呢?例如赋SELECT max(z) from table2可以
    select area_id,(select max(store_no) from b_stores) from b_areas
      

  2.   

    2、SELECT X,Y,Z FROM THABLE1 WHERE Z=(SELECT Z FROM TABLE2 WHERE A=变量X)
    其中‘变量X’为X的值,这里应该如何写呢?
    --
    不知道下面的是否符合楼主要求select * from 
    (
    select 1 as x,'aa' as y,'cc' as z from dual
    union
    select 2 ,'aa' ,'dd'  from dual
    ) a
    where z in(
    select z from 
    (
    select 1 as a,'aa' as z from dual
    union
    select 2 ,'dd'  from dual
    union
    select 3 ,'cc'  from dual
    ) b
    where b.a=a.x)
      

  3.   

    2.SELECT X,Y,Z FROM THABLE1
    WHERE Z=(SELECT Z FROM TABLE2 WHERE A=THABLE1.X)
      

  4.   

    SELECT X,Y,Z FROM THABLE1 WHERE Z=(SELECT Z FROM TABLE2 WHERE A=THABLE1.X)
      

  5.   

    对于第二个问题
    楼主的意思是否是:
    有两个表
    TABLE1  包含字段 X,Y,Z 
    TABLE2  包含字段 A,Z其实两个表的连接查询既可
    select x,y,z
    from table1 t1,table2 t2
    where t1.x = t2.A
    and t1.z = t2.z
      

  6.   

    注意:
     select后面有select的时候,后面的必须加上括号!