creat view Salaries2 (emp_name,sal_date,sal_amt)
as select s0.emp_name,so.sal_date,max(s0.sal_amt)
    from Salaries as s0,Salaries as s1
    where s0.sal_date<=s1.date
    and s0.emp=s1.emp_date
    group by s0.emp_name,s0.sal_date
 having count(*)<=2彻底糊涂中……………………

解决方案 »

  1.   

    上面的有个so应该是s0  下面这个是对的creat view Salaries2 (emp_name,sal_date,sal_amt)
    as select s0.emp_name,s0.sal_date,max(s0.sal_amt)
        from Salaries as s0,Salaries as s1
        where s0.sal_date <=s1.date
        and s0.emp=s1.emp_date
        group by s0.emp_name,s0.sal_date
     having count(*) <=2 
      

  2.   

    上面的有个so应该是s0  下面这个是对的creat view Salaries2 (emp_name,sal_date,sal_amt)
    as select s0.emp_name,s0.sal_date,max(s0.sal_amt)
        from Salaries as s0,Salaries as s1
        where s0.sal_date <=s1.date
        and s0.emp=s1.emp_date
        group by s0.emp_name,s0.sal_date
     having count(*) <=2 
      

  3.   

    s0.emp=s1.emp_date 至少贴数据结构和数据样本出来吧,否则就是猜谜语。[align=center]====  ====
    [/align]
      

  4.   

    晕 错了
    creat view Salaries2 (emp_name,sal_date,sal_amt)
    as select s0.emp_name,s0.sal_date,max(s0.sal_amt)
        from Salaries as s0,Salaries as s1
        where s0.sal_date  <=s1.date
        and s0.emp_date=s1.emp_date
        group by s0.emp_name,s0.sal_date
     having count(*)  <=2 
      

  5.   

    数据结构是
    create table Salaries
    (
      emp_name char(10) not null,
      sal_date date not null,
      sal_amt decimal(8,2) not null,
      primary key (emp_name,sal_date)
    );insert Salaries 
    values
    ('Tom' '1996-06-20',500.00 ),
    ('Tom' '1996-08-20',700.00 ),
    ('Tom' '1996-10-20',800.00 ),
    ('Tom' '1996-12-20',900.00 ),
    ('Dick' '1996-06-20',500.00 ),
    ('Harry' '1996-07-20',500.00 ),
    ('Harry' '1996-09-20',700.00 ),
      

  6.   

    视图修改成这样可以运行
    create view Salaries2 (emp_name,sal_date,sal_amt)
    as select s0.emp_name,s0.sal_date,max(s0.sal_amt)
        from Salaries as s0,Salaries as s1
        where s0.sal_date   <=s1.sal_date
        and s0.sal_date=s1.sal_date
        group by s0.emp_name,s0.sal_date
     having count(*)   <=2 ;原表内容
    Query SELECT * FROM salaries s, Sun May 04 11:35:54 2008 
    Tom 1996-06-20 500.00 
    Tom 1996-08-20 700.00 
    Tom 1996-10-20 800.00 
    Tom 1996-12-20 900.00 
    Dick 1996-06-20 500.00 
    Harry 1996-07-20 500.00 
    Harry 1996-09-20 700.00 视图内容
    Query SELECT * FROM salaries2 s, Sun May 04 11:36:27 2008 
    Dick 1996-06-20 500.00 
    Harry 1996-07-20 500.00 
    Harry 1996-09-20 700.00 
    Tom 1996-06-20 500.00 
    Tom 1996-08-20 700.00 
    Tom 1996-10-20 800.00 
    Tom 1996-12-20 900.00