글쎄, 어제의 질문에서 답한 내용을 사용하려고 애썼고 @AaronBertrand에서 비슷한 유형의 문제에 대한 답변을 제공했습니다. 나는 다음과 같습니다 데이터가 2008 R2피벗 테이블에 데이터 가져 오기
마이크로 소프트 SQL 서버에서 사용하고 있습니다 :
SalesPersonID TransDate Order DateTotal
1108 8/2/2013 231.95 7713.8
1108 8/2/2013 5805.15 7713.8
1108 8/2/2013 1676.70 7713.8
1108 8/3/2013 159.95 3635.35
1108 8/3/2013 468.90 3635.35
1108 8/3/2013 1160.85 3635.35
1108 8/3/2013 209.95 3635.35
1108 8/3/2013 1161.85 3635.35
1108 8/3/2013 473.85 3635.35
1108 8/4/2013 149.98 3151.68
1108 8/4/2013 793.95 3151.68
1108 8/4/2013 55.00 3151.68
1108 8/4/2013 198.95 3151.68
1108 8/4/2013 398.00 3151.68
1108 8/4/2013 1255.85 3151.68
1108 8/4/2013 299.95 3151.68
1108 8/9/2013 223.95 1413.8
1108 8/9/2013 59.95 1413.8
1108 8/9/2013 1129.90 1413.8
1108 8/30/2013 1396.43 1396.43
1108 8/31/2013 89.95 1735.65
1108 8/31/2013 495.95 1735.65
1108 8/31/2013 495.95 1735.65
1108 8/31/2013 633.85 1735.65
1108 8/31/2013 19.95 1735.65
1205 8/3/2013 2389.09 2389.09
내가 이전 질문 [Here]로부터받은 응답을 사용하여, 나는 완전히하지 않는 것 같아요
다음 SQL ....SO .....
내가 이런 일을 와서 데이터를 필요로하고 이해 나는 6 월을 선택한 경우 69,
상단에있는 숫자, 나는 8 월을 사용하고 선택한 월의 일이다, 그것은 단지 30
나는 나의 처음이자 마지막 일 날짜를 얻기 위해이 코드를 사용할 것 . 모두가 줄 수있는 모든 도움을
이SELECT xhours = number FROM Master..spt_values WHERE type = N'P' and number between 1 and @SelectedMonthDays ORDER BY number
감사 : 현재 선택된 달의
DECLARE @BeginDate AS VARCHAR(10), @EndDate AS VARCHAR(10), @SelectedMonthDays AS int
SET @BeginDate='08/15/13'
-- Last Day of Current Month
Set @SelectedMonthDays = DATEPART(day, DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,@BeginDate)+1,0)))
-- Last day Date of Current Month
SET @EndDate=cast(convert(date,DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,@BeginDate)+1,0))) as varchar(10))
-- Convert input date to the first day Date of current month
Set @BeginDate = cast(convert(date,DATEADD(s,0,DATEADD(mm, DATEDIFF(m,0,@BeginDate),0))) as varchar(10))
얻으려면 일,이 코드가 있습니다.
Worked great !! 고맙습니다. 하지만 작은 문제가 하나 있습니다. 산출 된 달러는 소수점 오른쪽에 십진수 4 자리가 있습니다. 나는 이것을 고치려고 노력했는데, 나는 그 코드를 어기는 것 같다. 'SalesPersonID를 선택하십시오. [Order], datepart (day, TransDate) AS day와 같이 SalesPersonID, Cast ([Order]를 10 진수 (6,2)로 선택하십시오.'오류 : 데이터 유형으로 돈을 변환하는 산술 오버플로 오류 숫자. – Jeff
@Jeff 해당 코드가 작동해야합니다 -이 데모보기 - http://sqlfiddle.com/#!3/c03167/16 해당 열의 데이터 유형은 무엇입니까? 당신은 올바른 테이블 구조로 SQL 바이올린을 편집 할 수 있습니까? – Taryn
데모를 확인했는데 내용이 정확합니다. 데이터 유형은 십진수 (6,2)입니다. – Jeff