반응형

전체 글 695

SQL Server에서 캐스케이드 삭제를 사용하는 방법

SQL Server에서 캐스케이드 삭제를 사용하는 방법 테이블이 2개 있습니다.T1과 T2는 데이터가 있는 기존 테이블입니다.우리는 T1과 T2 사이에 일대다 관계가 있다.T1에서 레코드가 삭제되고 T2에서 관련된 모든 레코드가 삭제되었을 때 SQL Server에서 캐스케이드 삭제를 수행하도록 테이블 정의를 변경하려면 어떻게 해야 합니까? 그들 사이에는 외국의 제약이 있다.T2에 대해 테이블을 삭제하거나 트리거를 만들고 싶지 않습니다.예를 들어, 직원을 삭제하면 검토 기록도 모두 사라집니다. T1 - 종업원, Employee ID Name Status T2 - 퍼포먼스 리뷰 Employee ID - 2009 Review Employee ID - 2010 Review SQL Server Management..

programing 2023.04.07

기능 vsSQL Server에 저장 프로시저

기능 vsSQL Server에 저장 프로시저 SQL에 저장 프로시저가 아닌 함수를 사용해야 하는 경우 및 그 반대는 무엇입니까?각각의 목적은 무엇입니까?을 수행할 수 .SQL Server)INSERT ★★★★★★★★★★★★★★★★★」UPDATE허가됩니다). 할 수 .SQL할 수 경우. 답을 정리한 코멘트에서 주의할 점.@Sean K Anderson 덕분에: 함수는 반드시 값을 반환해야 하며 매개 변수(인수)로 수신하는 데이터를 변경할 수 없다는 점에서 컴퓨터 과학 정의를 따릅니다.함수는 아무것도 변경할 수 없으며 매개 변수가 하나 이상 있어야 하며 값을 반환해야 합니다.저장된 proc에는 매개 변수가 필요하지 않으며 데이터베이스 개체를 변경할 수 있으며 값을 반환할 필요가 없습니다. 다음은 차이점을 정리..

programing 2023.04.07

T-SQL에서 퍼센트 부호를 이스케이프하려면 어떻게 해야 하나요?

T-SQL에서 퍼센트 부호를 이스케이프하려면 어떻게 해야 하나요? 이 질문에도 답이 있지만 구체적으로 DB2에 대해 언급하고 있습니다. 를 사용하여 문자열을 검색하려면 어떻게 해야 합니까?LIKE이미 퍼센트를 가지고 있다%그 안에 상징이 안에?그LIKE오퍼레이터의 용도%와일드카드를 나타내는 기호.괄호를 사용합니다.75%를 찾는다면 WHERE MyCol LIKE '%75[%]%' 이것은 EXCAPE보다 간단하고 대부분의 RDBMS에서 공통적입니다.를 사용할 수 있습니다.ESCAPE키워드LIKE. 기존 각 문자 앞에 원하는 문자(예: '!')를 추가하기만 하면 됩니다.%문자열에 부호를 입력한 후 추가합니다.ESCAPE '!'(또는 선택한 캐릭터)를 쿼리의 끝까지 표시합니다. 예를 들어 다음과 같습니다. SE..

programing 2023.04.07

인덱스에서 열의 순서가 얼마나 중요합니까?

인덱스에서 열의 순서가 얼마나 중요합니까? 지수 선언의 첫머리에 가장 선택적인 열을 넣어야 한다고 들었어요.예: CREATE NONCLUSTERED INDEX MyINDX on Table1 ( MostSelective, SecondMost, Least ) 일단 제 말이 맞나요?그렇다면 인덱스 내 열의 순서를 조정함으로써 성능 차이가 클 수 있습니까?아니면 '좋아요'에 가깝습니까? DTA를 통해 쿼리를 실행한 후 기존 인덱스와 거의 모든 열이 동일한 인덱스를 다른 순서로 만들 것을 권장했기 때문입니다.기존 인덱스에 누락된 열을 추가하여 좋다고 부를까 생각 중입니다.생각?다음과 같은 인덱스를 확인합니다. Cols 1 2 3 ------------- | | 1 | | | A |---| | | | 2 | | |..

programing 2023.04.07

두 열의 조합에 고유한 제약 조건 추가

두 열의 조합에 고유한 제약 조건 추가 테이블이 있는데 어떻게 된 일인지 같은 사람이 제 방에 들어와서Person테이블을 두 번 누릅니다.현시점에서는 프라이머리 키는 자동번호에 불과하지만 다른 두 개의 필드가 존재합니다. 예를 들어 다음과 같은 필드가 있습니다. ID Name Active PersonNumber 고유 Person Number 및 Active = 1의 레코드가 하나만 필요합니다. (따라서 두 필드의 조합은 고유해야 합니다.) SQL Server의 기존 테이블에서 가장 좋은 방법은 기존 값과 동일한 값을 가진 삽입을 다른 사용자가 실행해도 실패하므로 애플리케이션 코드에서 이 문제를 걱정할 필요가 없습니다.중복 항목을 삭제한 후: ALTER TABLE dbo.yourtablename ADD C..

programing 2023.04.07

SQL Server에서의 LIKE vs Contains

SQL Server에서의 LIKE vs Contains 다음 중 어떤 쿼리가 더 빠릅니까(LIKE vs Contains)? SELECT * FROM table WHERE Column LIKE '%test%'; 또는 SELECT * FROM table WHERE Contains(Column, "test"); 두 번째(를 의미한다고 가정하고 실제로 유효한 쿼리에 포함)는 어떤 형식의 인덱스(이 경우 전체 텍스트 인덱스)를 사용할 수 있으므로 더 빨라야 합니다.물론 이 쿼리 형식은 열이 전체 텍스트 색인에 있는 경우에만 사용할 수 있습니다.그렇지 않으면 첫 번째 양식만 사용할 수 있습니다. LIKE를 사용하는 첫 번째 쿼리는 와일드카드로 시작하므로 인덱스를 사용할 수 없으므로 항상 전체 테이블 검색이 필요합니..

programing 2023.04.07

SQL varchar에서 특정 하위 문자열의 발생 횟수를 어떻게 계산합니까?

SQL varchar에서 특정 하위 문자열의 발생 횟수를 어떻게 계산합니까? a, b, c, d와 같은 형식의 값이 있는 열이 있습니다.T-SQL에서 그 값의 쉼표 수를 셀 수 있는 방법이 있나요?가장 먼저 떠오르는 방법은 콤마를 빈 문자열로 대체하고 길이를 비교하는 것입니다. Declare @string varchar(1000) Set @string = 'a,b,c,d' select len(@string) - len(replace(@string, ',', '')) 여러 문자가 있는 문자열에 대해 작동하는 cmsjr의 응답의 빠른 확장입니다. CREATE FUNCTION dbo.CountOccurrencesOfString ( @searchString nvarchar(max), @searchTerm nva..

programing 2023.04.07

C#을 사용하여 텍스트에 탭 문자 삽입

C#을 사용하여 텍스트에 탭 문자 삽입 몇 가지 값을 캡처하고 그 값을 사용하여 텍스트를 작성해야 하는 응용 프로그램을 만들고 있습니다.Name,Age,기타. 출력은 플레인텍스트에서TextBox. 그런 정보들을 좀 더 잘 보이게 하려고요.columns그래서 저는 그것들을 로 분리하려고 합니다.tab더 명확하게 하기 위해서요. 예를 들어 다음과 같은 기능이 있습니다. Ann 26 Sarah 29 Paul 45 다음과 같이 표시했으면 합니다. Ann 26 Sarah 29 Paul 45 방법에 대한 힌트insert탭이 내 텍스트에 들어가나요?를 사용해 보세요.\t당신의 문자열에 있는 캐릭터하자르는 그의 말이 옳아\t다음은 C#의 전체 이스케이프 캐릭터 목록입니다. \'한 번 인용하면 됩니다. \"큰따옴표로 표..

programing 2023.04.07

SQL 서버에서 행을 열로 효율적으로 변환

SQL 서버에서 행을 열로 효율적으로 변환 SQL Server에서 행을 열로 효율적으로 변환하는 방법을 찾고 있는데, PIVOT가 그리 빠르지 않다고 들어서 많은 레코드를 처리해야 합니다. 다음은 예를 제시하겠습니다. 아이디 가치 컬럼명 1 존. 이름 2 2.4 양 3 ZH1E4A 우편 번호 4 포크 성 5 857685 어카운트 번호 결과는 다음과 같습니다. 이름 양 우편 번호 성 어카운트 번호 존. 2.4 ZH1E4A 포크 857685 어떻게 하면 결과를 만들 수 있을까요?여러 행의 데이터를 열로 변환할 수 있는 방법은 여러 가지가 있습니다. 사용.PIVOT SQL Server에서는PIVOT데이터를 행에서 열로 변환하는 함수: select Firstname, Amount, PostalCode, Last..

programing 2023.04.07

시간을 고려하지 않고 날짜 시간 열별로 그룹화하는 방법

시간을 고려하지 않고 날짜 시간 열별로 그룹화하는 방법 제품 주문이 많은데 날짜별로 묶어서 그 날짜의 수량을 합산하려고 합니다.시간 부분을 고려하지 않고 월/일/년 단위로 그룹화할 수 있는 방법은 무엇입니까? 3/8/2010 7:42:00와 함께 그룹화해야 합니다.3/8/2010 4:15:00값을 그룹 유형으로 캐스팅/변환합니다. GROUP BY CAST(myDateTime AS DATE) GROUP BY DATEADD(day, DATEDIFF(day, 0, MyDateTimeColumn), 0) 또는 SQL Server 2008 이후 버전에서는Date@Oded가 제안한 대로: GROUP BY CAST(orderDate AS DATE) 2008년 SQL 이전 날짜 부분 삭제: GROUP BY CONVER..

programing 2023.04.07
반응형