sql-server 70

SQL Server 2005에서 테이블의 여러 열 합계를 찾는 방법은 무엇입니까?

SQL Server 2005에서 테이블의 여러 열 합계를 찾는 방법은 무엇입니까? 자리가 있습니다Emp다음과 같은 행이 있습니다. Emp_cd | Val1 | Val2 | Val3 | Total -------+-------+-------+-------+------- 1 | 1.23 | 2.23 | 3.43 | 2 | 23.03 | 12.23 | 2.92 | 3 | 7.23 | 9.05 | 13.43 | 4 | 03.21 | 78.23 | 9.43 | 찾고 싶습니다SUM의Val1, Val2, Val3그리고 그것은 에 나타날 것입니다.Total기둥.쉬운: SELECT Val1, Val2, Val3, (Val1 + Val2 + Val3) as 'Total' FROM Emp 또는 한 행만 원하는 경우: SELE..

programing 2023.07.16

격리 레벨 - 직렬화 가능.언제 사용해야 하나요?

격리 레벨 - 직렬화 가능.언제 사용해야 하나요? 직렬화 가능한 격리 수준이 모든 격리 수준 중에서 가장 제한적인 것으로 알고 있습니다.어떤 종류의 애플리케이션이 이런 수준의 격리를 필요로 하는지, 아니면 언제 사용을 고려해야 하는지 궁금합니다.자신에게 다음과 같은 질문을 합니다.트랜잭션이 실행되는 동안 다른 사용자가 데이터에 새 행을 삽입하면 문제가 됩니까?이것이 당신의 결과를 용납할 수 없는 방식으로 방해합니까?그렇다면 직렬화 가능 수준을 사용합니다. 트랜잭션 분리 레벨 설정에 관한 MSDN: 직렬화 가능 데이터 세트에 범위 잠금을 설정하여 트랜잭션이 완료될 때까지 다른 사용자가 데이터 세트에 행을 업데이트하거나 삽입할 수 없도록 합니다.이것은 네 가지 격리 수준 중 가장 제한적입니다.동시성이 낮으므..

programing 2023.07.16

잘라내기 vs 삭제 시작의 장단점

잘라내기 vs 삭제 시작의 장단점 다음 두 가지 진술을 사용할 경우의 장단점을 간략하게 설명해 주시겠습니까? TRUNCATE TABLE dbo.MyTable 대 DELETE FROM dbo.MyTable 그들 둘 다 말과 행동이 같을 때 같은 일을 하는 것처럼 보이지만, 둘 사이에 반드시 차이가 있어야 합니다.TRUNCATE롤백 데이터를 생성하지 않으므로 빠르게 처리할 수 있습니다.테이블에서 사용하는 데이터 페이지의 할당을 해제합니다. 이고 이를 "취소"수 있는 그나거실중이할삭래제취를합러다수니사있다면기야사음려해용을용하는을능소이고행▁▁you▁use니▁to,할▁to▁need▁ability실그러▁youun▁ifaction▁this야▁and,▁the를 사용해야 합니다.DELETE FROM롤백 기능을 제공합니다...

programing 2023.07.16

exec(@sql)에서 값 반환

exec(@sql)에서 값 반환 나는 가치를 얻고 싶습니다.Exec(@sql)에 할당합니다.@Rowcount(int) 제 질문은 다음과 같습니다. 'SET @RowCount = (select count(*) FROM dbo.Comm_Services WHERE CompanyId = '+cast(@CompanyId as char)+' and '+@condition+')' 한편으로는 sp_executesql을 사용할 수 있습니다. exec sp_executesql N'select @rowcount=count(*) from anytable', N'@rowcount int output', @rowcount output; 반면에 임시 테이블을 사용할 수도 있습니다. declare @result table ([row..

programing 2023.07.06

SQL Server의 모든 데이터베이스 테이블 간의 관계 파악

SQL Server의 모든 데이터베이스 테이블 간의 관계 파악 데이터베이스의 테이블이 서로 어떻게 관련되어 있는지 알고 싶습니다(예: PK/FK/UK). 따라서 SQL Server의 모든 테이블에 대한 데이터베이스 다이어그램을 작성했습니다.작성된 다이어그램은 쉽게 읽을 수 없으며 다른 쪽 끝에 있는 표를 보려면 스크롤(수평 및 때로는 수직)해야 했습니다. 간단히 말해서 SQL의 db 다이어그램은 많은 테이블 간의 관계를 아는 것과 관련하여 UI 친화적이지 않습니다. 나의 (단순한) 질문:DB 다이어그램이 "좋은" 방법으로 수행할 수 있는 데이터베이스 다이어그램과 같은 것이 있습니까?때로는 텍스트 표현도 도움이 될 수 있습니다. 시스템 카탈로그 보기에 대한 이 쿼리를 사용하면 모든 FK 관계의 목록과 두 ..

programing 2023.07.06

sp_dbcmpt 수준이 더 이상 사용되지 않는 경우 SQL Server 데이터베이스 호환성을 확인하는 방법은 무엇입니까?

sp_dbcmpt 수준이 더 이상 사용되지 않는 경우 SQL Server 데이터베이스 호환성을 확인하는 방법은 무엇입니까? 의 BOL(SQL Server Books Online)에 따르면, 이 기능은 향후 버전의 Microsoft SQL Server에서 제거될 예정입니다.새 개발 작업에서 이 기능을 사용하지 말고 현재 이 기능을 사용하는 응용 프로그램을 최대한 빨리 수정하십시오.대신 ALTER 데이터베이스 호환성 수준을 사용하십시오. 데이터베이스 호환성을 확인하는 유일한 TSQL 방법은sp_dbcmptlevel제가 알기로는 호환성을 설정하기 위한 것이지 정보를 얻기 위한 것은 아닙니다. GUI를 사용하지 않고 호환성 수준을 얻으려면 어떻게 해야 합니까?select name, compatibility_le..

programing 2023.07.01

문자열의 악센트를 제거하려면 어떻게 해야 합니까?

문자열의 악센트를 제거하려면 어떻게 해야 합니까? 다음 문자열을 가지고 있습니다. áéíóú 그것을 변환해야 합니다. aeiou 어떻게 하면 달성할 수 있습니까? (비교할 필요가 없습니다. 저장할 새 문자열이 필요합니다.)사용해 보십시오.COLLATE: select 'áéíóú' collate SQL_Latin1_General_Cp1251_CS_AS 유니코드 데이터의 경우 다음을 시도하십시오. select cast(N'áéíóú' as varchar(max)) collate SQL_Latin1_General_Cp1251_CS_AS 두 번째 접근법을 사용할 때 번역에서 무엇을 잃을 수 있는지 잘 모르겠습니다. 갱신하다 처럼 보입니다.œ특별한 경우이고, 우리는 대문자와 소문자를 따로 처리해야 합니다.다음과 ..

programing 2023.06.26

SQL Server 2005 데이터베이스의 모든 보기를 나열하는 SQL 쿼리

SQL Server 2005 데이터베이스의 모든 보기를 나열하는 SQL 쿼리 SQL Server 2005의 특정 데이터베이스에 대한 모든 보기(보기 이름만 필요)를 열거하려면 SQL 쿼리가 필요합니다.(이미 제안된 내용으로) 세트오프를 완료하는 방법 SELECT * FROM sys.views 이렇게 하면 sys.objects(모든 유형의 개체에 공통적인 속성을 포함) 또는 INFORMATION_SCHEMA에서 사용할 수 없는 각 뷰에 대한 추가 속성이 제공됩니다.보기. INFORMATION_SCHEMA 접근 방식은 기본적으로 보기 정의를 제공합니다.SELECT SCHEMA_NAME(schema_id) AS schema_name ,name AS view_name ,OBJECTPROPERTYEX(OBJECT..

programing 2023.06.26

SQL에서 두 날짜 사이의 전체 월 수 계산

SQL에서 두 날짜 사이의 전체 월 수 계산 SQL의 FULL month 수를 계산해야 합니다. 2009-04-16 ~ 2009-05-15 => 0 보름. 2009-04-16 ~ 2009-05-16 => 1개월 내내 2009-04-16 ~ 2009-06-16 => 꼬박 2개월 저는 DATEIFF를 사용하려고 했습니다. SELECT DATEDIFF(MONTH, '2009-04-16', '2009-05-15') 하지만 두 날짜 사이에 꼬박 한 달을 주는 대신 월 부분의 차이를 제공합니다. 1 SQL Server의 전체 달 수를 계산하는 방법을 아는 사람?원래 게시물에 버그가 있었습니다...그래서 다시 작성해서 UDF로 포장했습니다. CREATE FUNCTION FullMonthsSeparation ( @Da..

programing 2023.06.26

SQL Server 바꾸기, 특정 문자 이후 모두 제거

SQL Server 바꾸기, 특정 문자 이후 모두 제거 내 데이터는 다음과 같습니다. ID MyText 1 some text; some more text 2 text again; even more text 세미콜론 이후에 세미콜론을 포함한 모든 항목을 삭제하도록 MyText를 업데이트하려면 다음과 같은 작업이 수행됩니다. ID MyText 1 some text 2 text again SQL Server Replace를 살펴보았지만 ";"를 확인할 수 있는 실행 가능한 방법이 생각나지 않습니다.CHARINDEX와 함께 LEFT 조합 사용: UPDATE MyTable SET MyText = LEFT(MyText, CHARINDEX(';', MyText) - 1) WHERE CHARINDEX(';', MyTe..

programing 2023.06.21