본문 바로가기
728x90

MSSQL 2

문자+숫자 DB 컬럼 정렬하기 DB 컬럼을 정렬할 때 간혹 컬럼 data가 문자+숫자로 되어 있어서 정렬이 이상하게 될 때가 있다. 가령 아래와 같다. SELECT * FROM VirtualMachines; 이런 경우에는 SELECT * FROM VirtualMachines ORDER BY VMName; 이렇게 수행해도 같은 결과가 나온다. 숫자의 정렬방식은 1, 10, 2, 3, 4, 5, 50 ... 이런 식이기 때문이다. 그럼 어떻게 변경해야할까? SELECT * FROM VirtualMachines ORDER BY LEN(VMName), VMName; 이런식으로 변경해주면 된다. LEN 이란 문자열의 길이를 반환해주는 함수이다. (같이 알아두면 좋은 것은 DATALENGTH 함수이니, 찾아보길 바란다.) 문자열의 길이로 먼저 .. 2020. 11. 9.
Stored Procedure - 저장 프로시저 오늘은 Stored Procedure ( 이하 SP ) - 저장 프로시저에 대해 알아보자. 회사에서 SP를 사용하기에 궁금증이 생겼었다. (여기선 MSSQL / T-SQL 의 기준으로 용어들을 설명한다.) SP는 무엇인가 ? MS Docs 에 SP에 대한 정의로 "SQL Server의 저장 프로시저는 하나 이상의 Transact-SQL 문 그룹이거나 Microsoft .NET Framework CLR(공용 언어 런타임) 메서드에 대한 참조입니다." 라고 나온다. 솔직히 CLR 메서드에 대한 참조는 무슨 말인지 모르겠고, 단순히 여러 SQL문이 존재하는 공간(파일)이라고 보겠다. SP와 다른 프로그래밍 언어의 유사점 1. SP를 호출하는 프로그램으로부터 입력 매개 변수를 받아 여러 출력 값을 반환한다. 2.. 2020. 8. 11.
728x90