SELECT decode(LENGTH(STAFF_NM),3,STAFF_NM || '[LENGTH=3]',STAFF_NM || '[LENGTH<>3]') L from STAFF_MST;

解决方案 »

  1.   

    SELECT case when (LENGTH(STAFF_NM)=3) THEN STAFF_NM || '[LENGTH=3]' ELSE  STAFF_NM || '[LENGTH<>3]' END IF AS  L from STAFF_MST
      

  2.   

    xzou(亡狼补齿) 的写法有语法错误.
    还有这句也出现这样的错误:select (hotel_dept_mst.dept_nm || DECODE(LENGTH(hotel_dept_mst.dept_nm) >0 AND LENGTH(hotel_place_mst.place_nm)>0,1=1,',','') || hotel_place_mst.place_nm ) AS location
    from hotel_dept_mst inner join hotel_place_mst on hotel_dept_mst.id=hotel_place_mst.id正确的应该怎么写?
      

  3.   

    select (hotel_dept_mst.dept_nm || 
    DECODE(sign(length(hotel_dept_mst.dept_nm)*LENGTH(hotel_place_mst.place_nm)),1,'都〉0','至少有一个<0') || hotel_place_mst.place_nm ) AS location
    from hotel_dept_mst inner join hotel_place_mst on hotel_dept_mst.id=hotel_place_mst.id
      

  4.   

    1,
    SELECT decode(LENGTH(STAFF_NM),3,STAFF_NM||'[LENGTH=3]',STAFF_NM||'[LENGTH<>3]') AS  L from STAFF_MST
    2,
    select hotel_dept_mst.dept_nm || DECODE(sign(LENGTH(hotel_dept_mst.dept_nm)*LENGTH(hotel_place_mst.place_nm)),1,',','') || hotel_place_mst.place_nm ) AS location
    from hotel_dept_mst,hotel_place_mst where hotel_dept_mst.id=hotel_place_mst.id
      

  5.   

    确实有错,改为
    SELECT case when (LENGTH(STAFF_NM)=3) THEN STAFF_NM || '[LENGTH=3]' ELSE  STAFF_NM || '[LENGTH<>3]' END IF from STAFF_MST