반응형

sql-server 30

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

두 열의 조합에 고유한 제약 조건 추가 테이블이 있는데 어떻게 된 일인지 같은 사람이 제 방에 들어와서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

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

포스트그레가 뭐죠?ISNULL()에 상당하는 SQL

포스트그레가 뭐죠?ISNULL()에 상당하는 SQL MS SQL-Server에서는 다음을 수행할 수 있습니다. SELECT ISNULL(Field,'Empty') from Table 하지만 Postgre에서는SQL 구문 오류가 발생합니다.어떻게 하면ISNULL()기능성?SELECT CASE WHEN field IS NULL THEN 'Empty' ELSE field END AS field_alias 또는 보다 관용적인 방법: SELECT coalesce(field, 'Empty') AS field_alias 사용하다COALESCE()대신: SELECT COALESCE(Field,'Empty') from Table; 이 기능은 다음과 같습니다.ISNULL단, 더 많은 기능을 제공합니다.병합은 목록에서 nu..

programing 2023.04.07

SQL Server에서 SELECT를 업데이트하려면 어떻게 해야 합니까?

SQL Server에서 SELECT를 업데이트하려면 어떻게 해야 합니까? SQL Server에서는 테이블 내에 행을 삽입할 수 있습니다.INSERT.. SELECT★★★★★★★★ INSERT INTO Table (col1, col2, col3) SELECT col1, col2, col3 FROM other_table WHERE sql = 'cool' 테이블 업데이트도 가능합니까?SELECT값이 포함된 임시 테이블이 있는데 해당 값을 사용하여 다른 테이블을 업데이트하려고 합니다.을 사용하다 UPDATE Table SET col1, col2 SELECT col1, col2 FROM other_table WHERE sql = 'cool' WHERE Table.id = other_table.id UPDATE T..

programing 2023.04.07

하위 쿼리에서 여러 행을 단일 구분 필드로 "연결"하는 SQL Server 함수를 만드는 방법은 무엇입니까?

하위 쿼리에서 여러 행을 단일 구분 필드로 "연결"하는 SQL Server 함수를 만드는 방법은 무엇입니까? 이 질문에는 이미 답변이 있습니다. SQL Server에서 여러 행의 텍스트를 단일 텍스트 문자열로 연결하는 방법 (47개 답변) 닫힘6년 전에요. 예를 들어 다음과 같은 두 개의 테이블이 있다고 가정합니다. VehicleID Name 1 Chuck 2 Larry LocationID VehicleID City 1 1 New York 2 1 Seattle 3 1 Vancouver 4 2 Los Angeles 5 2 Houston 다음 결과를 반환하기 위한 쿼리를 작성하려고 합니다. VehicleID Name Locations 1 Chuck New York, Seattle, Vancouver 2 La..

programing 2023.04.07

ID 일치를 기반으로 한 테이블에서 다른 테이블로의 SQL 업데이트

ID 일치를 기반으로 한 테이블에서 다른 테이블로의 SQL 업데이트 는 이이 with with with with with with 데이터베이스를 있다.account numbers ★★★★★★★★★★★★★★★★★」card numbers이을 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★update계좌번호에 카드번호를 입력해서 계좌번호로만 작업하고 있습니다. 와 링크하는 해서 이 테이블을 했습니다.Table ID계정 번호와 일치하는 ID의 레코드를 업데이트해야 합니다. 은 ★★★입니다.Sales_Import서 '''는account number필드를 갱신해야 합니다. 리드 아이디 어카운트 번호 147 5807811235 150 5807811326 185 70061001000072..

programing 2023.04.07

표 변수에 색인 작성

표 변수에 색인 작성 SQL Server 2000의 테이블 변수에 인덱스를 작성할 수 있습니까? 예. DECLARE @TEMPTABLE TABLE ( [ID] [int] NOT NULL PRIMARY KEY ,[Name] [nvarchar] (255) COLLATE DATABASE_DEFAULT NULL ) Name질문에는 SQL Server 2000이라는 태그가 붙어 있습니다만, 최신 버전으로 개발하시는 분들의 편의를 위해 먼저 대응하겠습니다. SQL Server 2014 아래 SQL Server 2014에서 설명하는 제약조건 기반 인덱스를 추가하는 방법 외에 테이블 변수 선언에 인라인 구문을 사용하여 고유하지 않은 인덱스를 직접 지정할 수도 있습니다. 그 구문 예는 다음과 같습니다. /*SQL Ser..

programing 2023.04.07
반응형