login register Sysop! about ME  

2019년 08월 23일 11시 08분 00초,     조회수 : 206
  제목 : MSSQL2014 조건절 REPLACE 관련 문의입니다 도와주세용 ㅜㅜ
SEQ : 28427 글쓴이 : soom3193

작성 포맷 : TEXT 모드, 자동 줄바꿈 사용

안녕하세요 MSSQL과 C#으로 개발하고 있는 초보 전산쟁이입니다.

다름이 아니라 이번에 팝업창을 개발하면서 도저히 해결되지 않는 일이 생겨가지고 도움 좀 받고 싶어서 글을 남깁니다.

Winform 라벨 텍스트 값들을 플러스하여  그 값을 프로시저 파라미터값으로 넘깁니다.

값은   @ETC =   -미성형-,-오염-,-파손-,-기타-,-GAS-  이런식으로 잘 넘어옵니다.

그럼 이 값을 받아와서 조회 구문 중 조건절에    WHERE  DefName NOT IN (  REPLACE(@@ETC,'-','''') ) 

이런식으로 구성하여 - 를 작은 따옴표로 치환하고 실행되게 하려합니다.

하지만 이런 방법이 SELECT  REPLACE(@@ETC,'-','''')  이렇게는 잘 먹히는데 조건절에 들어가면 안먹히더라구요,,

제가 잘못한걸까요???? 다른 방법이 있으면 알려주시면 감사하겠습니다. 선배님들

  mabari99
  2019-08-26(13:45)
캐릭 이미지
넘어온 @ETC값을 먼저 리플레이스 해주고 진행 해주세요.
SET @ETC = Replace(@ETC,'-','')
WHERE defName not in (@ETC)
혹시 모르니 trim으로 한번 감싸 주시구요~

  soom3193
  2019-09-03(10:34)
캐릭 이미지
답변이 늦어서 죄송합니다.
말씀하신 방법으로 해보았으나 NOT IN 안에서는 안먹히더라구요..
다른 방법이 있을까요?

  hskim618
  2019-09-03(17:43)
캐릭 이미지
@ETC 데이터가 comma로 구분된 값들을 하나의 문자열로 받은 거네요.
comma로 구분해서 table 변수에 넣고 사용해 보세요.

comma로 구분하는 작업은 string_split() 함수를 사용하면 됩니다.
https://docs.microsoft.com/ko-kr/sql/t-sql/functions/string-split-transact-sql?
view=sql-server-2017



제목 작성자 날짜 조회
MSSQL2014 조건절 REPLACE 관련 문의입니다 도와주세용 ㅜㅜ (3) soom3193 2019-08-23 206

 
 
.NET과 Java 동영상 기반의 교육사이트

로딩 중입니다...

서버 프레임워크 지원 : NeoDEEX
based on ASP.NET 3.5
Creative Commons License
{5}
{2} 읽음   :{3} ({4})