database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
ㆍSybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Sybase Q&A 2181 게시물 읽기
No. 2181
sybase에서 top 대신 사용할 게 있나요 ??
작성자
질문하자
작성일
2008-03-18 10:44
조회수
7,945

CREATE PROC COMPANY_SELECT
 @PAGESIZE INT,
 @PAGEINDEX INT,
 @STYPE VARCHAR(30),
 @SWORD VARCHAR(50)
AS
BEGIN
 DECLARE @SQL VARCHAR(1000)
        SET @SQL = 'SELECT TOP ' + STR(@PAGESIZE) + ' * FROM COMPANY_INFO '
 SET @SQL = @SQL + 'WHERE COMPANY_ID NOT IN (SELECT TOP ' + STR((@PAGEINDEX-1)*PAGESIZE) + ' COMPANY_ID FROM COMPANY_INFO '
 SET @SQL = @SQL + 'WHERE ' + @STYPE + ' LIKE ''%' + @SWORD + '%'' ORDER BY COMPANY_ID DESC) '
 SET @SQL = @SQL + 'AND ' + @STYPE + ' LIKE ''%' + @SWORD% + '%'' ORDER BY COMPANY_ID DESC)'
 EXEC @SQL
END
GO

이렇게 프로시저를 실행하려고 하니 에러가 나더라구요.
Sybase에서 TOP 문을 사용할수 없어서 그렇다는군요.
[임시테이블]을 이용하면 된다던데..  처음하는거라 감이 안오네요.

아시는분 계시면  답변 부탁드립니다.

이 글에 대한 댓글이 총 3건 있습니다.

1. 일단 버젼업을 한다




2. 버젼업 상황이 안되면


 set rowcount 명령을 사용한다

지연님이 2008-03-24 12:29에 작성한 댓글입니다. Edit

업무시 참고하시기 바랍니다.
벌써 해결하셨는지도 모르겠지만요...^^
아래 실행하는 sybase ase version 12.5.3입니다. 
 

CREATE PROC IMSI

 CREATE TABLE #TEMP_IMSI_TABLE (
        INDENT INT,
        TMPL_ID VARCHAR(10),
   )

    INSERT #TEMP_IMSI_TABLE
    SELECT 필드명
    FROM    테이블명
    WHERE  조건절 

END 



김미정(skkmj)님이 2008-04-08 14:34에 작성한 댓글입니다.

begin set rowcount 10 end select * from TABLE_NAME

최택진님이 2010-05-07 17:51에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
2184sybase ase 를 사용하는데요..comment다는 방법있나요? [1]
고복수
2008-03-19
8928
2183sybase에서 테이블 drop하기 [2]
송하석
2008-03-18
7831
2182probe id의 용도? [1]
박충원
2008-03-18
7035
2181sybase에서 top 대신 사용할 게 있나요 ?? [3]
질문하자
2008-03-18
7945
2180sql [1]
ot
2008-03-17
6370
2179입력된 순서로 리스트 뽑기(정렬필드없음) [1]
order
2008-03-17
7950
2178리눅스에서 sybase DB -> Mysql DB 컨버젼 시키는 방법? [1]
겡얼
2008-03-16
6814
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.026초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다