동적쿼리를 덜 사용하기 위해서 이짓저짓하다 보면 끝 자락쯤에서 생기는 문제가 오더바이(Order by)절입니다. 오더바이절에서도 선택문을 제한적이지만 사용은 가능합니다.(몇 버전부터 가능한지는 모르겠습니다.) (참고 : MSDN - ORDER BY 절(Transact-SQL)) 연관글 영역 1. 사용 방법 사용 방법은 크게 2가지가 있습니다. 일반적인 케이스문처럼 사용하는 방법과 콤마(,)를 이용하여 여러 조건을 주는 것이죠. Declare @nOrderColumn int = 1; Select * From tb_BigData1 Order by (case @nOrderColumn when 1 Then Data1 when 2 Then Data2 when 3 Then Data3 when 4 Then Data4..
'Row_Number'를 이용하려면 'MSSQL 2005'이상에서 사용 가능한 방법입니다. 'Row_Number'를 이용하여 검색된 결과에 순서대로 번호를 부여한 후 이 번호를 기반으로 'bettwen'으로 필요한 범위를 잘라내는 방법입니다. 동적 쿼리를 전혀 사용하지 않아도 중복되는 코드 없이 깔끔하게 코드를 만들 수 있다는 장점이 있습니다. *글을 읽기전에 이전글( [MSSQL] MSSQL의 페이징 쿼리 고찰 - 0. 테스트 환경 만들기(클릭) )을 보고 오시는 것이 좋습니다.* 연관글 영역 1. 사용 방법 사용 방법은 다음과 같습니다. Select ( Row_Number() Over ( Order By [정렬 기준 컬럼] [정렬 방향] )) as [Row_Number()로 만든 순서 컬럼명], [출..
MSSQL에서 페이징 처리는 여러 가지로 귀찮습니다. MSSQL 2012버전부터는 어느 정도 간단하게 처리할 수 있도록 오프셋(OFFSET)을 지원하긴 하는데....성능이-_-; 어찌 됐건 예전에 만들어둔 페이징 쿼리가 너무 느려 이상해서 이것저것 테스트하다 보니 이 기회에 정리 좀 해야겠다 싶어 포스팅을 시작합니다. ㅎㅎㅎ MSSQL에서 사용할 수 있는 페이징 쿼리를 소개하고 속도, 유지 보수성 등의 몇 가지 중요하다고 생각되는 요소를 주관적으로 평가해보겠습니다. 연관글 영역 1. 테스트 DB 만들기 테스트를 위해 테스트용 DB를 만들겠습니다. 1-1. DB 생성 테스트용 DB의 이름은 'TestDB'입니다. 1-2. 테이블 생성 테이블은 2개를 생성합니다. SET ANSI_NULLS ON GO SET..
html을 작성하다보면 자주 사용 하는 것 중에 하나가 'float'속성입니다. 그런데 'float'속성의 특징은 다른 레이아웃에 영향을 주지 않는 것이죠. 0. 테스트용 코드 작성 테스트용 html을 다음과 같이 작성합니다. aaaaaaaaaaaaaaa bbbbbbbbbbbbbbb ccccccccccccccc 이 코드를 실행하면 다음과 같이 나옵니다. 1. 문제 이제 '.Child1'과 '.Child2'에 'float'을 추가해 봅시다. .Child1 { background-color:yellow; width:300px; height:300px; float:left; } .Child2 { background-color:red; width:200px; height:200px; float:left; } 이..
인텔에서 아두이노 호환보드로 갈릴레오라는 보드를 내놨습니다. (참고 : Arduino - Intel Galileo) 아두이노 호환보드라는 것은 아두이노에서 돌아가는 하드웨어와 소프트웨어를 그대로 사용할 수 있는 보드를 뜻합니다. 그런데 MS에서 인텔 갈릴레오 개발 보드에 올릴 수 있는 윈도우 8.1을 공개했습니다 ㅡ.ㅡ (참고 : MS, 사물 인터넷 개발을 위한 개발자용 윈도우 프리뷰 버전 공개) 사물 인터넷과 개발보드 사물 인터넷 제품이라는 것은 일반적인 제품들에 인터넷이 연결하여 다양한 동작이나 데이터수집이 가능해진 제품을 말합니다. 이런 제품들을 개발 할 때 필요한 것이 개발 보드라는 것입니다. 저도 이런 제품을 다루기 위해 하드웨어를 공부했는데.....쉽지 않습니다 ㅋ 그래서 소프트웨어 개발자도 ..
CD나 DVD의 수명은 100년 정도 간다고 합니다. 물론 습도와 온도가 맞고 직사광선이 없다는 가정하에서 말이죠. 그렇다면 일반적인 CD-R과 DVD-R의 체감 수명은 몇 년일까요? 이론상 100년까지 버틴다는데 그건 어디까지나 이론이죠. ㅎㅎㅎ 간만에 정리 그리고.... 서울에서 자취하다가 집으로 다시 온 김에 예전에 쌓아둔 짐들을 정리하면서 CD와 DVD를 정리하였습니다. 많은 CD와 DVD중 몇 가지 자료들만 추려서 백업하고 있습니다. 이미 예전에 메가당 가격이 하드가 더 싸졌기 때문도 있고 필요 없는 백업본은 버리는 게 나을 것 같은 이유도 있었죠. 결과는? 대략 전체 CD와 DVD숫자는 7~800장 정도 됩니다. 이 중 150~200장은 여러 가지 이유로 버리려고 따로 모아 둔 것이니 백업용은..
유니티는 'OnGUI()'를 작성해서 호출되면 GUI표시됩니다. 근데 유니티에는 GUI 관련 플러그인이 많아서 그런지 다른 자료들이 뒤섞여 있어서 정작 필요한 자료 찾기가 힘들었다는 문제가 ㅎㅎㅎ 1. 'OnGUI()'작성 먼저 스크립트 파일을 하나 만들어서 다음과 같이 작성합니다. using UnityEngine; using System.Collections; public class claGUI : MonoBehaviour { private int m_nCount = 0; private TextMesh m_tmText; void Start () { m_tmText = (TextMesh)GameObject.Find("txtCount").GetComponent(typeof(TextMesh)); } void..
빌보드라는 것은 노래 차트가 아니고.... 3D에서 사용자가 보는 화면은 카메라가 보는 시점입니다. 카메라가 움직이거나 회전해도 카메라를 향해서 바라보는 오브젝트(기능?)를 빌보드(Billboard)라고 합니다. 1. 'transform.LookAt'사용 하기 'transform.LookAt'은 지정한 위치를 계속 바라보게 하는 메소드입니다. (참고 : 유니티 스크립트 레퍼런스 - Transform.LookAt) 그냥 타겟만 정하면 알아서 바라봅니다. 이것을 카메라로 지정하면 카메라를 계속 보고 있게 됩니다. 문제는 'z'축이 바라보기 때문에 다른 축은 원하는 방향을 보게 할 수가 없죠. 그러니 다른 축을 바라보게 하기 위해서는 그룹이 되는 오브젝트를 넣고 z축을 카메라 방향으로 두고 돌리려는 오브젝트를..
(한글 자막 있습니다.) 전산 인력이 따로 없는 클라이언트와의 미팅은 대부분 '1 + 1 = 2'라는 것을 모르는 사람이 '2 * 2 = 6'가 나오는 프로그램을 요구하는 것과 비슷합니다. 그러므로 미팅에서 하는 일은 '1 + 1 = 2'을 이해 시키는 것이고 회의 끝날 때쯤 나오는 클라이언트의 말은 "왜 '2 * 2 = 6'가 안 되느냐?" 로 끝나게 됩니다. 그래서 프로젝트 매니저는 커뮤니케이션 능력이 중요 합니다. 예전에 커뮤니케이션능력이 떨어지는 팀장 때문에 클라이언트나 다른 팀장이 우리 팀장과 통화만 하면 저한테 꼭 전화가 와서 제가 해결하는 경우도 있었습니다-_-; 가끔 프로그래머의 커뮤니케이션 능력에 대해 간과하거나 폄훼하는 경우가 있습니다. 하지만 혼자 인디프로그램 같은 것들을 만들어서 3..
케릭터를 기준으로 화면이 돌아가는 것은 쉽게 볼 수 있는 연출입니다. 그런데 '유니티는 왜이렇게 자료가 없지?'라는 생각을 했는데...제가 단어 선택을 잘 못한것 같네요 ㅎㅎㅎ 1. 'transform.Rotate'와 'transform.RotateAround'의 차이 'transform.Rotate'는 객체를 자기중심으로 제자리에서 회전시키는 것입니다. 'transform.RotateAround'는 지정된 좌표를 중심으로 회전 시키는 것입니다. (참고 : 유니티 스크립트 레퍼런스 - Transform.Rotate, Transform.RotateAround) 그래서 'transform.RotateAround'의 경우 매개변수로 전달되는 앵글만큼 오브젝트가 지정된 좌표를 기준으로 회전합니다. 2. 코드 작..