DDL—데이터 정의 언어(생성, 변경, 삭제, DECLARE)
DML—데이터 조작 언어(선택, 삭제, 업데이트, 삽입)
DCL—데이터 제어 언어(GRANT, REVOKE, COMMIT, ROLLBACK) )
먼저 기본문을 간략히 소개합니다:
1. 설명: 데이터베이스 생성
DATABASE 데이터베이스 이름 생성
설명: 데이터베이스 삭제
drop 데이터베이스 dbname
3. 설명: Backup sql server
--- 백업 데이터 장치 생성
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:mssql7backupMyNwind_1.dat '
--- 백업 시작
BACKUP DATABASE pubs TO testBack
4. 지침: 새 테이블 생성
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
기존 테이블을 기반으로 새 테이블 생성:
A: tab_old처럼 tab_new 테이블 생성(이전 테이블을 사용하여 새 테이블 생성)
B: 테이블 생성 tab_new를 tab_old 정의에서만 선택
5. 설명: 새 테이블 삭제
테이블 탭 이름 삭제
6. 설명: 열 추가
테이블 탭 이름 추가 column col type
참고: 열을 추가한 후에는 삭제할 수 없습니다. DB2에서는 컬럼이 추가된 후에는 데이터 유형을 변경할 수 없습니다. 변경할 수 있는 유일한 것은 varchar 유형
의 길이를 늘리는 것입니다.
7. 기본 키 추가: 테이블 이름 변경 기본 키 추가(col)
기본 키 삭제: 테이블 탭 이름 변경 기본 키 삭제(col)
8. : 인덱스 생성: create [unique] index idxname on tabname(col….)
인덱스 삭제: drop index idxname
참고: 인덱스를 변경하려면 삭제하고 다시 빌드해야 합니다. 그것.
9. 지침: 뷰 생성: select 문으로 뷰 viewname 만들기
뷰 삭제: view viewname 삭제
10. 몇 가지 간단한 기본 SQL 문
선택 :select * from table1 where range
삽입: table1(field1,field2)에 값(value1,value2)을 삽입
Delete: delete from table1 where range
업데이트: table1 업데이트 field1=value1 where range
검색: select * from table1 where field1 like '%value1%' ---like의 구문은 매우 정교합니다.
정렬: select * from table1 order by field1,field2 [desc]
합계 : select count as totalcount from table1
Sum: select sum(field1) as sumvalue from table1
Average: select avg(field1) as avgvalue from table1
Maximum: select max(field1) as maxvalue from table1
🎜>최소값: table1의 최소값으로 min(field1)을 선택합니다.
11. 설명: 여러 고급 쿼리 연산자
A: UNION 연산자
UNION 연산자는 다른 두 결과 테이블(예: TABLE1 및 TABLE2) 테이블에서 중복 행을 제거하여 결과 테이블을 파생시킵니다. ALL을 UNION(즉, UNION ALL)과 함께 사용하면 중복 행이 제거되지 않습니다. 두 경우 모두 파생 테이블의 각 행은 TABLE1 또는 TABLE2에서 가져옵니다.
B: EXCEPT 연산자
EXCEPT 연산자는 TABLE1에는 있지만 TABLE2에는 없는 모든 행을 포함하고 모든 중복 행을 제거하여
결과 테이블을 파생합니다. ALL을 EXCEPT(EXCEPT ALL)와 함께 사용하면 중복 행이 제거되지 않습니다.
C: INTERSECT 연산자
INTERSECT 연산자는 TABLE1과 TABLE2 모두에 있는 행만 포함하고 중복 행을 제거하여 결과
테이블을 파생합니다. ALL을 INTERSECT(INTERSECT ALL)와 함께 사용하면 중복 행이 제거되지 않습니다.
참고: 연산자 단어를 사용하는 여러 쿼리 결과 줄은 일관성이 있어야 합니다.
12. 설명: 외부 조인 사용
A. 왼쪽 외부 조인:
왼쪽 외부 조인(왼쪽 조인): 결과 집합에는 조인 테이블의 일치하는 행이 포함됩니다. 왼쪽 조인 테이블 OK.
sql: LEFT OUT JOIN b ON a.a = b.c에서 a.a, a.b, a.c, b.c, b.d, b.f를 선택합니다.
B: 오른쪽 외부 조인:
오른쪽 외부 조인(오른쪽 조인): 결과 집합 둘 다 조인 테이블의 일치하는 조인 행과 오른쪽 조인 테이블의 모든 행을 포함합니다.
C: 완전 외부 조인:
완전 외부 조인: 기호 연결 테이블의 일치하는 행뿐만 아니라 조인된 두 테이블의 모든 레코드도 포함합니다.
13. 설명: 테이블 복사(구조만 복사, 원본 테이블 이름: a, 새 테이블 이름: b) (액세스 가능)
방법 1: a에서 *를 b로 선택합니다. 여기서 1< >1
방법 2: a
에서 b로 상위 0 * 선택 14. 설명: 테이블 복사(복사 데이터, 원본 테이블 이름: 대상 테이블 이름: b) (접근 가능)
insert into b(a, b, c) select d,e,f from b
15. 설명: 데이터베이스 간 테이블 복사(특정 데이터에 대해서는 절대 경로 사용) (접근 가능)
insert b(a, b, c)로 '특정 데이터베이스'의 b에서 d,e,f를 선택합니다. 여기서 조건
예: ..from b in '"&Server.MapPath(".")&"data.mdb" & "' 어디..
16. 설명: 하위 쿼리(테이블 이름 1: 테이블 이름 2: b)
select a,b,c from a where a IN(select d from b) 또는: select a,b,c from a where a IN
(1,2,3)
17. 설명: 기사, 제출자 및 마지막 응답 시간을 표시합니다.
테이블 a에서 a.title,a.username,b.adddate를 선택하고,( max(adddate) adddate from
table where table.title=a.title) b
18. 설명: 외부 조인 쿼리(테이블 이름 1: 테이블 이름 2: b)
select a.a , a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c
19. 설명: 온라인 보기 쿼리(테이블 이름 1: a)
select * from( a , b,c FROM a) T where t.a > 1;
20. 설명: between, between은 쿼리 데이터 범위를 제한하고 경계 값을 포함하며, between은 포함하지 않습니다.
select * from table1 where time between time1 and time2
select a,b,c, from table1 where a not between value 1 and value 2
21 설명:
select * from table1 where a에서 사용하는 방법 [not] in ('값 1', '값 2', '값 4', '값 6')
22 설명: 두 개의 관련 테이블, 보조 테이블에 없는 기본 테이블을 삭제합니다. 정보
존재하지 않는 table1에서 삭제( select * from table2 where
table1.field1=table2.field1 )
23. 설명: 4개 테이블 결합 쿼리 문제:
select * from a 왼쪽 내부 조인 b on a.a=b.b 오른쪽 내부 조인 c on a.a=c.c 내부 조인
d on a.a=d.d where .....
24분 전에 알림을 예약하세요. 🎜>sql: datediff('분', f 시작 시간, getdate())>5에서 *를 선택합니다.
25. 설명: 하나의 sql 문으로 데이터베이스 페이징을 완료합니다.
상위 10개를 선택합니다. * from (상위 20개 기본 키 필드 선택, 테이블 이름 순서에서 필드 정렬
desc) a, 테이블 이름 b 여기서 b. 기본 키 필드 = a. 필드 정렬
26. 설명: 상위 10개 레코드를 선택합니다. (이와 유사한 사용법은 포럼 월별 순위, 월별 인기 상품 분석, 주제 점수별 순위 등에 사용할 수 있습니다.)
테이블 이름에서 a,b,c를 선택합니다. ta where a=(select max(a) from tablename tb where
tb.b=ta.b)
28 설명: TableA의 모든 행을 포함하고 TableB 및 TableC에서는 제외하여 파생됩니다. 모든 중복 행 A
결과 테이블
(tableA에서 선택) 제외(tableB에서 선택) 제외(tableC에서 선택)
29. 설명: 데이터 10개를 무작위로 꺼냅니다. 🎜>newid()로 테이블 이름 순서에서 상위 10개 * 선택
30. 설명: 레코드를 무작위로 선택
newid() 선택
31. 설명: 중복 레코드 삭제
삭제 id가 없는 tablename에서(
col1,col2,...별로 tablename 그룹에서 max(id) 선택)
32 설명: 데이터베이스의 모든 테이블 이름을 나열합니다.
에서 이름 선택 sysobjects where type= 'U'
33. 설명: 테이블의 모든 항목을 나열합니다.
id=object_id('TableName')인 syscolumns에서 이름을 선택합니다.
34. , vender 및 pc 필드는 type 필드별로 정렬되어 있어
select의 경우와 유사하게 다중 선택을 쉽게 구현할 수 있습니다.
유형 선택,sum('A'인 경우 케이스 벤더, pc else 0 종료),sum('C'인 경우 케이스 벤더
그런 다음 pc else 0 종료),sum('B'인 경우 케이스 벤더, pc else 0 end) FROM tablename
group by type
표시 결과:
type vender pc
Computer A 1
Computer A 1
CD B 2
CD A 2
휴대폰 B 3
휴대폰 C 3
35. 지침: 테이블 table1 초기화
TRUNCATE TABLE table1
36. 🎜 >select top 5 * from (select top 15 * from table order by id asc) table_alias order by
id desc
데이터베이스 레코드를 무작위로 선택하는 방법(Randomize 함수 사용, SQL 문을 통해 구현)
데이터베이스에 저장된 데이터의 경우 난수 기능을 사용하면 위와 같은 효과를 얻을 수 있지만 너무 느릴 수 있습니다.
ASP에 "임의의 숫자 찾기"를 요청하여 인쇄할 수는 없습니다. 실제로 일반적인 해결책은 다음과 같은 루프를 만드는 것입니다.
Randomize
RNumber = Int(Rnd*499) +1
While Not objRec.EOF
If objRec("ID ") = RNumber THEN
... 실행 스크립트는 다음과 같습니다...
end if
objRec.MoveNext
Wend
이는 이해하기 쉽습니다. 먼저 1에서 500 사이의 임의의 숫자를 꺼냅니다(500이 데이터베이스의 총 레코드 수라고 가정). 그런 다음 각 레코드를 반복하여 ID 값을 테스트하여 RNumber와 일치하는지 확인합니다. 조건이 충족되면
을 실행합니다.THEN 키워드로 시작하는 코드 블록입니다. RNumber가 495이면 데이터베이스를 순환하는 데
오랜 시간이 걸립니다. 500개는 큰 숫자처럼 보일 수 있지만 일반적으로 단일 데이터베이스 내에 수천 개의 레코드를 포함하는 보다 강력한 엔터프라이즈 솔루션에 비하면 여전히 작은 데이터베이스입니다. 지금은 죽은거 아냐?
SQL을 사용하면 아래와 같이 정확한 레코드를 신속하게 찾고 해당 레코드만 포함하는 레코드세트를 열 수 있습니다.
:
Randomize
RNumber = Int(Rnd*499) + 1
sql = "Select * FROM Customers Where ID = " & RNumber
set objRec = ObjConn.Execute(SQL)
Response.WriteRNumber & " = " & objRec("ID ") & " " & objRec("c_email")
RN번호와 ID는 따로 적을 필요 없이 일치 여부만 확인하면 됩니다. 위 코드의 작동에 만족한다면
필요에 따라 "임의" 레코드를 조작할 수 있습니다. 레코드세트에는 다른 콘텐츠가 포함되어 있지 않으므로 필요한 레코드를 빠르게 찾을 수 있어
처리 시간이 크게 단축됩니다.
난수에 대해 다시 이야기해 보겠습니다.
이제 Random 기능에서 마지막 기름 한 방울까지 짜내겠다고 결심했으므로 여러 개의 무작위 레코드를 한 번에 꺼내거나
특정 범위 내에서 레코드를 사용하고 싶을 수도 있습니다. 무작위 범위. 위의 표준 Random 예제를 확장하면 SQL을 사용하여 위의 두 가지 상황
을 처리할 수 있습니다.
무작위로 선택된 여러 레코드를 검색하여 동일한 레코드 세트에 저장하려면 세 개의 임의의 숫자를 저장한 다음
데이터베이스에 쿼리하여 이 숫자와 일치하는 레코드를 얻을 수 있습니다.
sql = "Select * FROM ID = " & RNumber & " 또는 ID = " & RNumber2 & " 또는
ID = " & RNumber3
10개의 레코드를 선택한다고 가정합니다(페이지가 목록을 로드할 때마다 10개의 링크 가능). , BETWEEN 또는
수학 방정식을 사용하여 첫 번째 레코드와 적절한 증분 레코드 수를 선택할 수 있습니다. 이 작업은 여러 가지 방법으로 수행할 수 있지만
Select 문은 한 가지 가능성만 보여줍니다(여기서 ID는 자동으로 생성된 숫자입니다).
sql = "Select * FROM Customers Where ID BETWEEN " & RNumber & " AND " & RNumber & "+
9"
참고: 위 코드의 실행 목적은 데이터베이스에 동시 레코드가 9개 있는지 확인하는 것이 아닙니다.
임의로 여러 레코드 읽기, 테스트됨
액세스 구문: Select top 10 * From table name orDER BY Rnd(id)
sql server:select top n * from table name order by newid ()
mysqlelect * From table name order By rand() Limit n
액세스 왼쪽 조인 구문(최근 개발에서는 왼쪽 조인을 사용해야 합니다. 액세스 도움말에는 아무것도 없고 인터넷 액세스에 대한 SQL 설명은 없습니다.
직접 테스트하고 나중에 참조할 수 있도록 지금 적어 두세요)
구문 select table1.fd1,table1,fd2,table2.fd2 From table1 left Join table2 on
table1.fd1,table2.fd1 where ...
너무 긴 문자열 표시를 대체하려면 SQL 문 사용...을 사용하세요.
구문:
SQL 데이터베이스: len(field)>10이면 left(field,10)+'...'인 경우 선택 else field end as
news_name,news_id from tablename
액세스 데이터베이스: Select iif(len(field)>2,left(field,2)+'...',field) FROM tablename;
Conn.Execute 설명
Execute 메소드
이 메소드는 SQL 문을 실행하는 데 사용됩니다. SQL 문 실행 후 레코드 셋이 반환되는지 여부에 따라 이 메소드의 사용 형식은
두 가지
유형으로 구분됩니다(1). SQL 쿼리 문이 실행되면 쿼리로 얻은 레코드 세트가 반환됩니다. 사용법은 다음과 같습니다.
개체 변수 이름 설정 = 연결 개체.Execute("SQL Query Language")
Execute 메서드가 호출된 후 레코드 집합 개체가 자동으로 생성되고 쿼리 결과가 레코드 개체에 저장됩니다. . Set
메소드를 통해 레코드세트를 지정된 개체에 할당하여 나중에 개체 변수를 나타냅니다.
(2). SQL의 작동 언어를 실행할 때 레코드 집합이 반환되지 않습니다. 이때 사용법은 다음과 같습니다.
Connection object.Execute "SQL 연산문" [, RecordAffected][, Option]
?RecordAffected는 선택사항입니다. SQL문 실행 후 여기에 변수를 넣을 수 있습니다. 유효 레코드 개수
가 이 변수에 자동으로 저장됩니다. 이 변수에 접근하면 SQL 문이 몇 개의 레코드에 대해 연산을 수행했는지 알 수 있습니다.
?옵션 선택 사항인 이 매개 변수의 값은 일반적으로 adCMDText입니다. 이는 Execute
메서드 다음의 첫 번째 문자가 명령 텍스트로 해석되어야 함을 ADO에 알리는 데 사용됩니다. 이 매개변수를 지정하면 실행을 더욱 효율적으로 만들 수 있습니다.
*BeginTrans, RollbackTrans, CommitTrans 메서드
이 세 가지 메서드는 트랜잭션 처리를 위해 연결 개체에서 제공하는 메서드입니다. BeginTrans는 작업을 시작하는 데 사용됩니다.
RollbackTrans는 트랜잭션을 롤백하는 데 사용되며 CommitTrans는 모든 트랜잭션 처리 결과를 제출하는 데, 즉 트랜잭션 처리를 확인하는 데 사용됩니다.
트랜잭션 처리는 작업 그룹을 전체적으로 처리할 수 있습니다. 모든 명령문이 성공적으로 실행된 경우에만 트랜잭션 처리가 성공한 것으로 간주됩니다.
명령문 중 하나가 실행되지 않으면 전체 처리가 실패한 것으로 간주됩니다. 여기에서 이전 상태로 복원됩니다.
BeginTrans와 CommitTrans는 트랜잭션의 시작과 끝을 표시하는 데 사용됩니다. 이 둘 사이의 문은 트랜잭션
으로 처리되는 문입니다. 트랜잭션 처리의 성공 여부는 객체의 Error 컬렉션을 연결하여 알 수 있습니다. Error 컬렉션
의 구성원 수가 0이 아닌 경우 오류가 발생하여 트랜잭션 처리에 실패한 것입니다. Error 컬렉션의 각 Error 개체는 오류 메시지
를 나타냅니다.
37.
테이블 내용별 그룹에 대한 SQL 문 인터뷰 질문:
2005-05-09 승리
2005-05-09 승리
2005-05-09 패배
2005-05-09 부정
2005-05-10 Win
2005-05-10 부정
2005-05-10 부정
생성하려는 경우 SQL 문 작성 방법 다음 결과 ?
승패
2005-05-09 2 2
2005-05-10 1 2
답변: 코드는 다음과 같습니다.
create table #tmp(rq varchar(10),shengfu nchar (1))
insert into #tmp 값('2005-05-09','win')
insert into #tmp 값('2005-05-09',' win')
insert into #tmp 값('2005-05-09','negative')
insert into #tmp 값('2005-05-09','negative')
insert into #tmp 값('2005- 05-10','win')
insert into #tmp 값('2005-05-10','negative')
insert into #tmp 값('2005-05 -10','negative' )
1)rq, sum(shengfu='win'인 경우 1 else 0 end)'win',sum(shengfu='
negative'인 경우 1 else 선택 0 end) #tmp 그룹에서 'negative' by rq
2) select N.rq,N.win,M.negative from (
select rq,win=count(*) from #tmp where shengfu=' win'group by rq)N 내부 조인
(select rq,negative=count(*) from #tmp where shengfu='negative'group by rq)M on N.rq=M.rq
3)select a.col001,a.a1 Win, b.b1은
(temp1에서 col001,count(col001) a1 선택, col002='win'은 col001로 그룹화) a,
(col001,count(col001 선택) ) b1 from temp1 where col002= 'Negative' 그룹 by col001) b
where a.col001=b.col001
38. 인터뷰에서 만난 SQL 문 쿼리 질문에 대해 물어보세요
있습니다. 테이블에서 A B C 열 3개 사용: A 열이 B 열보다 크면 A 열을 선택하고, B 열이 C 열보다 크면 B 열을 선택합니다.
그렇지 않으면 열을 선택합니다. 기음.
예는 다음과 같습니다:
select (case when a>b then a else b end ),
(case when b>c then b esle c end)
from table_name
39, 날짜 판단을 위한 SQL 문이요?
tb_send 테이블에서 날짜(SendTime 필드)가 현재 날짜인 모든 레코드를 제거하시겠습니까?(SendTime 필드는 날짜
날짜 및 시간을 포함하는 날짜/시간 유형입니다.)
예제는 다음과 같습니다.
select * from tb where datediff (dd,SendTime,getdate())=0
40. 중국어, 수학, 영어의 3개 필드가 있는 테이블이 있습니다. 중국어 70점, 수학 80점
, 영어 58점을 나타내는 레코드가 3개 있습니다. SQL문을 사용하여 이 3개 레코드를 쿼리하고 다음 조건에 따라 표시하십시오(그리고 여러분의 생각을 적어주세요).
80점 이상이면 우수, 60점 이상이면 합격, 60점 미만은 불합격을 의미합니다.
표시 형식:
중국어 수학 영어
합격 우수 불합격
예는 다음과 같습니다.
(중국어>=80인 경우 'Excellent'
중국어> ; =60 then 'pass'
else 'fail') 중국어로,
(case when math>=80 then 'excellent'
when math>=60 then 'pass'
else 'fail' ) 수학으로,
(English>=80일 때 'excellent'
English>=60일 때 'pass'
else 'fail')를 영어로,
테이블에서
41 sqlserver2000에서 sql을 사용하여 두 개의 필드 ID와
IDValues가 포함된 사용자 임시 테이블을 만들고 두 필드의 차이점을 설명하세요.
table: create table #xx(ID int, IDValues int)
시스템 임시 테이블: create table ##xx(ID int, IDValues int)
차이점:
사용자 임시 테이블 뿐입니다. 이 테이블을 생성한 사용자의 세션에만 표시되고 다른 프로세스에는 표시되지 않습니다.
이 임시 테이블은 해당 테이블을 생성한 프로세스가 사라지면 자동으로 삭제됩니다.
전역 임시 테이블은 전체에 표시됩니다. SQL Server 인스턴스입니다. 그러나 액세스하는 모든 세션이 자동으로 삭제됩니다.
42. sqlserver2000은 저장 매체에 따라 저장 용량이 제한됩니다.이 방법은 이러한 무제한 용량 메커니즘을 구현합니다.
모든 데이터는 데이터 파일(*.dbf)에 저장되므로 파일 크기만 충분하면 SQL Server의 저장 용량을 확장할 수 있습니다
SQL Server에는 세 가지 유형이 있습니다. 2000개 데이터베이스 파일:
기본 데이터 파일
기본 데이터 파일은 데이터베이스의 시작 지점이며 데이터베이스에 있는 파일의 다른 부분을 가리킵니다. 각 데이터베이스에는 기본 데이터 파일
이 있습니다. 기본 데이터 파일에 권장되는 파일 확장자는 .mdf입니다.
보조 데이터 파일
보조 데이터 파일에는 기본 데이터 파일을 제외한 모든 데이터 파일이 포함됩니다. 일부 데이터베이스에는 보조 데이터 파일이 없을 수 있지만 일부
데이터베이스에는 여러 개의 보조 데이터 파일이 있을 수 있습니다. 보조 데이터 파일에 권장되는 파일 확장자는 .ndf입니다.
로그 파일
로그 파일에는 데이터베이스를 복원하는 데 필요한 모든 로그 정보가 포함되어 있습니다. 각 데이터베이스에는 최소한 하나의 로그 파일이 있어야 하지만
한 개 이상 있을 수도 있습니다. 로그 파일의 권장 파일 확장자는 .ldf입니다.
43. 결과를 얻으려면 sql 문을 사용하세요
table1과 table2에서 table3에 나열된 형식의 데이터를 가져옵니다. 제공된 데이터와 결과는 정확하지 않습니다
. 당신의 조언을 위해.
저장 프로시저를 사용할 수도 있습니다.
table1
월 월 부서별 실적 yj
1월 01 10
1월 02 10
1월 03 5
2월 02 8
2월 04 9
3월 03 8
table2
부서 dep 부서명 dname
----------------------------------- --
01 국내영업1
02 국내영업2
03 국내영업3
04 해외영업
table3 (결과)
부서 1월 2월 3월 월
- -------------------------------------
01 10 null null
02 10 8 null
03 null 5 8
04 null null 9
--------------- ------ ---------
1)
a.부서명 dname,b.Performance yj를 '1월',c.Performance yj를 '2월', d.Performance yj를 '3월'로 선택
table1 a,table2 b,table2 c,table2 d
여기서 a.Department dep = b.Department dep 및 b.Month mon = '1월' 및
a.Department dep = c.Department dep 및 c.Month mon = '2월' 및
a.Department dep = d.Department dep 및 d.Month mon = '3월' 및
2)
a.dep,
sum( case when b.mon=1 then b.yj else 0 end) as '1월',
sum(case when b.mon=2 then b.yj else 0 end) as '2월',
sum( case when b.mon=3 then b.yj else 0 end) as '3월',
sum(case when b.mon=4 then b.yj else 0 end) as 'April',
sum( case when b.mon=5 then b.yj else 0 end) as 'May',
sum(case when b.mon=6 then b.yj else 0 end) as 'June',
sum( case when b.mon=7 then b.yj else 0 end) as 'July',
sum(case when b.mon= 8 then b.yj else 0 end) as 'August',
sum( case when b.mon=9 then b.yj else 0 end) as 'September',
sum(case when b.mon=10 then b.yj else 0 end) as 'October',
sum( case when b.mon=11 then b.yj else 0 end) as 'November',
sum(case when b.mon=12 then b.yj else 0 end) as 'December',
from table2 a left Join table1 b on a.dep=b.dep
44. Huawei 인터뷰 질문
테이블에 하나의 ID에 대한 레코드가 여러 개 있습니다. 이 ID에 대한 모든 레코드를 확인하고 개수를 표시합니다. 기록이 있습니다.
---------------------------------- --- --
select id, Count(*) from tb group by id by count(*)>1
select*from(select count(ID) as count from table group by ID)T where T.count> ;1
MySQL의 가장 기본적인 SQL 구문/문과 관련된 더 많은 기사를 보려면 PHP 중국어 웹사이트를 참고하세요. !