프로그래밍을 하다 보면 예상치 못한 경로로 문자열에 공백이 들어오는 경우가 종종 발생합니다. 이럴 경우 공백이 어디서부터 들어왔는지 소스가 길어질수록 찾아보기엔 굉장히 귀찮죠. 이럴 경우 그냥 공백이 들어온 스트링 값을 그냥 제거해주는 방식으로 프로그래밍을 진행할 수도 있습니다. 이럴 때 유용하게 사용하는 함수가 Trim이라는 함수입니다. Trim 문자열을 입력받거나 문자열을 합칠경우 가끔 쓸데없는 공백이 따라 들어오곤 합니다. 그럴 때 유용하게 사용되는 Trim함수입니다. 사용법도 매우 간단합니다. 사용법 String str = " 문자열에 공백이 있습니다. "; System.out.println(str); str = str.trim(); System.out.println(str); 그냥 문자열.tri..
String변수나 배열 같은 곳에 많은 양의 데이터들이 들어가 있을 경우 자신이 바꾸고자 하는 값만 골라서 바꾸기란 쉽지 않습니다. 이럴 때 유용하게 쓰일 수 있는 함수가 바로 Replace함수입니다. 이번 포스팅에서는 문자열 치환 함수 Replace, ReplaceAll, ReplaceFirst 함수의 사용법에 대해서 알아보겠습니다. Replace String a = "무궁화 삼천리 화려강산 대한사람 대한으로 길이 보전하세 "; //replace([기존문자],[바꿀문자]) a= a.replace("대한", "민국"); System.out.println(a); //결과값 : 무궁화 삼천리 화려강산 민국사람 민국으로 길이 보전하세 String replace(CharSequnce target, CharSeq..
자바에서는 문자열을 붙이는 방법이 여러 가지 있습니다. String a = "첫번째 텍스트입니다. "; String b = "두번째 텍스트입니다. "; System.out.println(a+b); //결과값 : 첫번째 텍스트입니다. 두번째 텍스트입니다. 대부분 이런식으로 문자열에다가 + 를 시키는 방법으로 문자열을 합치지만 이번 포스팅에서는 자바 String클래스의 문자열 붙이기 함수인 Concat과 Append 함수를 활용하여 문자열을 붙이는 방법에 대해 알아보도록 하겠습니다. Concat Concat과 +연산자는 같은 문자열을 합치는 기능을 합니다. 하지만 동작하는 방식이 다른데요. Concat은 합친 문자열을 String으로 생성해줍니다. 하지만 + 연산자는 문자열을 먼저 StringBuilder로..
자바 스트링 클래스에는 사용하기 편리하도록 만들어놓은 여러 가지 함수가 있습니다. 이번 포스팅에서는 그 함수들 중 문자열 자르기에 관련된 함수들을 한번 알아보도록 하겠습니다. SubString 문자열 자르기 하면 가장 먼저 생각나는 함수입니다. 문자열 함수에 익숙해지시면 SubString함수와 다른 함수들을 섞어서 정말 다양하게 활용할 수 있는데요. 사용법에 대해 한번 알아보도록 하겠습니다. 활용 예제로는 마지막 3글자 자르기, 특정 문자 이후의 문자열 자르기, 특정(단어) 부분만 자르기를 준비했습니다. 우선 문자열을 자르기에 앞서 문자열이 어떻게 배치되어있는지 Index값부터 살펴야 문자열을 자를 수 있습니다. String 클래스 자체가 char을 여러 개 붙여놓은 효과를 주기 때문에 String 클래..
제 4차산업혁명이 터지면서 코딩 교육이 무척이나 중요해졌습니다. 많은 사람들이 프로그래머를 꿈꾸고 있죠 코딩을 하다보면 매순간 오류에 직면하고 그 오류를 해결하는 것이 반복됩니다. 그래서 그 오류를 잡을 수 있는 능력이 중요해요. 오류를 잘 잡는 사람들이 코딩도 잘하더라구요. 그 능력은 알고리즘 문제를 풀면서 능력을 상승시켜줄 수 있습니다. 다들 네이버나 카카오 삼성전자 이런 대기업에 취직하는것을 목표로 합니다. 꿈은 크게 가져야 하니까요 ㅎㅎ 알고리즘 대회에서 입상을 하게 되면 이런 대기업에 취직할 수 있는 길이 열리니까 꼭 관심가져보시는게 좋을듯해요. 1. 백준 알고리즘 가장 유명한 알고리즘 사이트입니다. 어마어마하게 많은 문제가 있어요. 쉬운문제는 정말 해도해도 너무할정도로 쉽고 어려운문제는 해도해..
요새 제 4차산업혁명이 터지면서 코딩 교육이 무척이나 중요해진 시기라고 합니다. 저도 대학다닐때 프로그래머를 꿈꾸며 열심히 아래의 사이트를 보며 열심히 공부했었던 기억이 나네요. 또 저도 학생들에게 교육을 몇번 한 적이 있었는데 저는 그렇게 남들에게 가르쳐주는것이 어려운지 몰랐어요. 강의 초창기때의 저는 말도 막 버벅거리고 횡설수설하고 쪽팔림이란 쪽팔림은 다팔았죠... ㅠㅠㅠ 하지만 아래 사이트의 강사님들은 가르치는 스킬이나 수준이 최상급에 속해있는 강사분들입니다. 제가 이때까지 코딩을 배우며 느낀 결론은 프로그래밍은 책을보며 이론위주의 공부를 하는것 보다는 동영상을보며 실습위주의 공부를 하는것이 이해하기도 쉽고 코딩도 빨리 배운다라는 사실입니다. 이에 프로그래밍 공부를 할 수 있는 유용한 사이트를 몇개..
매콤한 닭발이 먹고 싶어 동래에서 찾은 발빠닭~ 처음 맛집을 찾다가 닭발에 이끌려 갔던 곳, 메뉴는 여러가지가 있습니다. 저는 개인적으로 뼈닭발을 좋아합니다. 닭발은 뜯는 맛이죠!! 몇번을 간지라 똥집튀김, 주먹밥, 국물닭발 등 많이 먹어 보았고 대체적으로 음식이 맛있습니다. 발빠닭은 맵기를 조절할 수 있습니다. 5가지 중 저는 도전까지 먹어보았습니다. HOT이 불닭 맵기정도라고 하시고, 도전부터는 다른 고추가 첨가되어 HOT과 차이가 많이 납니다. 저는 워낙 매운 것을 좋아하는지라... 도전은 정~말 매운 것을 좋아하시면 도전해 보세요. (참고로 저는 불닭을 전혀 매워하지 않습니다^^) 계란찜이 먼저 나왔습니다. 받자마자 계란에서 연기 화산폭발!! 계란이 많이 들어가 단단하고 양이 많습니다. 계란찜은 ..
오랜만에 서면 나들이, 막창을 찾았습니다 찾다가 뎐벼락에 가게 되었죠. 그런데!! 어머나, 2년전 아무생각 없이 들어갔던 그 막창집!! 그때는 2차로 가서 정신없이 먹었는데,왠걸.. 더 맛있어 진 것 같습니다. 메뉴는 간단하면서도 여러가지 있습니다. 저는 곱창, 막창을 모두 좋아하는 관계로.. 2명에서 맨 위에 있는 막창(2인분)+양념막창(2인분)을 먹었죠. 둘이서 천천히 먹기 좋은 양인 것 같습니다. 기본적인 세팅입니다. 생수를 좋아하는 않는 저를 위해, 보리차 물이 나왔습니다.(행복..>.
HOTTO(호또) 치킨집을 다녀왔습니다. 처음에는 명란마요를 보고 들어갔지만, 더 유명하다는 통후추 치킨을 먹어보았습니다. 어딜가든 기본적인 음식을 먼저 먹어봐야 하니까요~! 메뉴는 여러가지가 있었지만, 역시 기본, 다음에는 명란마요 도전! 치킨 등장! 혼자서 일하시는지 조금 바빠보여서 기다리며, 맥주부터 홀짝홀짝~ 내부나 분위기상 호프집처럼 생겼습니다. 하지만 배달도하고 다른 여느 닭집과 다를 것 없습니다. 처음에는 후추를 싫어하는 것은 아니지만, 통후추라고 해서 걱정했어요. 너무 덩어리째 씹히는건 아닐지, 걱정도 잠시, 통후추를 살짝 으깨서 반죽에 입혀 튀기는 것 같습니다. 그래서 씹히더라도 약간 매콤한 정도, 거슬리거나 그러지 않고 매력터지는 맛! 특이하고 오묘하면서도 매력이 있는 것 같습니다. 치..
얼마 전 광장시장을 다녀왔습니다. 이것저거 먹거리가 무진장 많아 유명한 광장시장, 예~전에 한번 갔다와서 요번에 갔다왔는데요, 육회가 유명하다는 것을 처음알았던... 왜 이 맛있는것을... 그리하여 맛집을 하나 소개하고자 합니다. 시장이 넓어서 길 찾기가 힘들긴 했습니다 골목으로 들어서면 이렇게 간판이 걸려 있답니다. 사람이 많아서 잠깐 대기하는 동안 포토타임~ 회전율이 빠르고 바빠서 고기를 잘라 보관하고 있습니다. 간, 천엽, 육회를 썰어서 보관하고 있는데, 저렇게 썰어놓고 보관하면 마르거나, 먼가 좋지 않을것 같다는 생각을 하게 되죠. 하지만, 실제로는 사람이 끊임 없이 들어오기 때문에, 그럴 걱정을 할 시간이 없습니다. 드디어 입성! 메뉴는 여러가지가 있습니다. 하지만, 시장에서 순대와 국수, 빈대..
이번 포스팅에서는 앞선 두 포스팅에서 배웠던 문자열 합치기 : STUFF, FOR XML PATH 문자열 구분자 추가 : QUOTENAME 기법들을 활용해 동적 피벗테이블을 만들어보도록 하겠습니다. 동적 피벗 테이블 만들기 예제 테이블 DEPT, EMP를 이용해서 연도별(DT) 부서 입사 현황을 조회한다 (회사코드(COMPANY):0327, 사업장코드(BIZAREA):1000 데이터로 한정함) 1. PIVOT을 이용해 년도를 칼럼으로 표시 2. 동적컬럼 생성 시 STUFF, QUOTENAME 함수를 이용하여 입사자가 있는 년도만 표시 결과 화면 예시 동적 피벗 만들기 DECLARE @COL AS NVARCHAR(MAX) --변수선언 DECLARE @QUERY AS NVARCHAR(MAX) --변수에 쿼리..
MSSQL에서 문자열을 합치는 방법은 여러가지가 있습니다. 이번 포스팅에서는 테이블을 Select 해온 결과값을 문자열로 쉽고 간편하게 만들 수 있는 방법을 소개해 드리도록 하겠습니다. STUFF, FOR XML STUFF : 지정된 문자열의 시작위치와 크기를 지정하여 원하는 문자로 치환하는 함수입니다. 사용법 STUFF('[문자열]','[시작위치]','[크기]','[치환문자]') FOR XML : 쿼리의 실행 결과를 XML형식으로 만들어줍니다. 모드 1. RAW : 행 집합의 각 행마다 SELECT문으로 반환되는 단일 행(ROW)를 생성합니다. 2. AUTO : SELECT문의 결과 XML에서 중첩된 구조를 생성합니다. 3. EXPLICIT : XML모양을 자신의 의지대로 특성과 요소를 혼합할 수 있습..
QUOTENAME란? 문자열을 합치다 보면 가끔 문자열 앞에 따옴표 혹은 쉼표를 붙여준다거나 대괄호로 묶어줘야 할 경우가 있습니다. 그럴 때 유용하게 쓰이는 함수가 바로 QUOTENAME이라는 함수인데요 QUOTENAME이라는 함수는 문자열 앞뒤로 구분자를 넣어주는 기능을합니다. 구분자를 입력하지 않았을경우에는 대괄호가 추가되는 함수입니다. 사용법 --문법-- QUOTENAME ( '대상문자열' ,구분자 ) --EX-- PRINT(QUOTENAME ('ABCD')) ==> [ABCD] PRINT(QUOTENAME ('ABCD','''')) ==> 'ABCD' 예제 테이블 EX_TABLE에는 다음과같이 DT칼럼의 데이터 7개가 있다. 이 데이터를 대괄호로 묶어서 한 줄로 출력하시오 DECLARE @COL ..