나는 DateTime.Now
이GETDATE()는 DateTime.Now만큼 비쌉니까?
는 SQL 2005/2008 고가의 GETDATE()
가 (here에서) 매우 비싼 호출이 들었습니다? 저장 프로 시저에서 여러 번 사용하면 변수에 캐시 할 수 있습니까?
나는 DateTime.Now
이GETDATE()는 DateTime.Now만큼 비쌉니까?
는 SQL 2005/2008 고가의 GETDATE()
가 (here에서) 매우 비싼 호출이 들었습니다? 저장 프로 시저에서 여러 번 사용하면 변수에 캐시 할 수 있습니까?
비싸지 않다. OS에서 바로 나온다.
어쨌든 캐시 할 것입니다. 여러 문장이있는 경우 별개의 호출에 따라 다를 수 있습니다. 여러 개의 삽입이 있다고 가정하면 값이 테이블간에 상호 연관되기를 원할 것입니다.
SELECT에서 사용하는 경우 출력용으로 보통 한 번만 평가됩니다.
"나는 DateTime.Now라고 들었습니다"라고 들었던 곳에서 우리와 함께 나눌 수 있습니까? –
아마도이 최근의 질문에서 : http://stackoverflow.com/questions/1381370/hidden-boxing-in-the-bcl – adrianbanks
당신이 그것을 많이 부르면 그것은 비싸다. 애드리안 뱅크스 (adrianbanks)가 지적한 그 질문은 datetime.now 100 만 번을 호출하는 데 약 500 밀리 초가 걸린다는 것을 보여줍니다. 어느 쪽이 정수를 증가 시키거나, 몇 개의 문자열을 연결하는 것과 비교하면 꽤 느립니다 (나는 그것을 테스트했습니다). 그러나 여전히 그렇게 느리지는 않습니다. 몇 시간 동안 중요한 코드 조각에서 datetime.now를 몇 백만 번 호출 할 계획이 아니라면 아마 중요하지 않을 것입니다. – Kibbee