SQL 구문 요약
1. 조건에 따라 필드를 읽고 지정된 몇 가지 값 또는 하나의 값만 가져오도록 필드를 정의합니다.
blis_order o,blis_orderservice os에서 os.*를 선택합니다. 여기서 o.orderid=os.orderid 및 o.ordertypeid는 (4, 8, 10, 11)에 없고 o.status는 ('New','Accepted','Pending- 승인', '보류 중', '수정 보류') 및 snp.status='활성' 및 b.entityid=1
2. 중복된(다른) 필드를 개별적으로 제거합니다.
blis_chargeactivation ca,blis_orderparameter op에서 고유한 op.name,op를 선택합니다. 여기서 op.mastertype='charge' 및 ca.chargeactivationid=op.masterid 및 ca.parentcode(예: '%NBR Storage Charge%')
3. 필드는 null일 수 없습니다.
Blis_Order o, Blis_Orderservice os에서 os.orderserviceid,os.orderofferid,o.ordertypeid,o.status를 선택합니다. 여기서 o.orderid=os.orderid 및 os.orderofferid는 null이 아닙니다.
4. 특정 조건을 만족하는 기록 삭제
bsf.keyid='110206'인 blis_bstoffermigplan bsf에서 삭제하세요.
5. name_a 필드를 선택하고 필드 별칭 name_b를 입력합니다.
blis_bstoffermigplan bsf에서 bsf.keyid 하위 코드, bsf.bstoffermigplanid를 선택하세요.
여기에는 키 ID 필드가 사용되고 하위 코드 필드가 표시됩니다.
6. 연결 롤백 커밋
롤백은 메모리에서 수행된 동작을 취소하고 이를 데이터베이스에 유지하지 않는 것입니다. 커밋은 메모리에서 수행된 동작을 데이터베이스에 유지하는 것입니다.
7. Oracle에서 Dual을 사용하십시오. Dual은 Oracle의 고유한 가상 테이블입니다. 일반적으로 Oracle의 여러 시스템 순서는 테이블과 일대일 대응을 설정합니다. 그러나 이를 프로그래밍 방식으로 삽입하려면 수동으로 지정해야 합니다. Account 데이터를 추가하는 등 해당 값을 SEQ_ACCOUNT.nextval에 삽입하고, Dual을 통해 변수와 함수를 얻을 수 있다.
S: getdate()를 선택합니다.
O: 듀얼에서 sysdate를 선택합니다.
DUAL에서 SEQ_INTEGRATIONTASK.NEXTVAL을 선택합니다.
8. (PK) 기본 키(PK)(데이터베이스용)
9. 정렬(숫자, 글자 큰 것부터 작은 것 순)
blis_bstoffermigplan에서 bsf.*를 선택하세요. bsf.ordertypeid desc로 bsf 주문하세요.
10.기록 삽입
blis_bstoffermigplan에 삽입합니다(bstoffermigplanid, 엔터티ID, keyid, subioncode, ordertypeid, 유형, 템플릿 코드, 통화 코드, 예외 개수, lastException, att1, att2, att3,att4,att5,offercode, 상태, 생성자, 생성 날짜, 마지막 수정자, 마지막 수정 날짜) 값 ( seq_bstoffermigplan.nextval, ?, ?, ?, ?, ?,?, ?, ?,?, ?, ?, ?, ?, ?, ?, ?, ?,sysdate, ?, sysdate)
11. 기록 업데이트
업데이트 Offermigplan.db_table_name은 엔터티 ID=?,keyid=?,subioncode=?,ordertypeid=?,type=?,templatecode=?,currencycode=?,Exceptioncount=?,lastException=?,att1=?,att2=?,att3로 설정합니다. =?,att4=?,att5=?,offercode=?,status=?,createdby=?,lastmodifiedby=?,lastmodifieddate=sysdate 여기서 bstoffermigplanid=?
12. 데이터 양이 많은 삽입형 clob
13. 조회 날짜
다음 두 명령문은 동일한 기능을 갖습니다.
to_char(acc.lastmodifieddate,'YYYYMMDD')>'20050101' blis_account 계정에서 *를 선택하세요.
acc.lastmodifieddate>to_date('2005-01-01','yyyy-mm-dd')인 blis_account 계정에서 *를 선택하세요.
14필드의 값을 기준으로 중복 레코드 찾기
예를 들어, Chargeactivationid 값이 동일한 blis_usageaccess 레코드를 찾으세요.
Chargeactivationid가 있는 blis_usageaccess에서 *를 선택합니다(count(*) >1인 Chargeactivationid를 기준으로 blis_usageaccess 그룹에서 Chargeactivationid 선택).
USAGEACCESSID CHARGEACTIVATIONID SERVICEACCESSCODE
292518 148701 오디오-브로드캐스트@
292517 148701 VoIP@
292516 148701 CALLIN-DID@
292515 148701 콜백-INTL@
292512 148701 콜린@
292513 148701 수신자 부담 전화@
292514 148701 콜백@
292478 147945 오디오-방송@
292477 147945 VoIP@
292475 147945 콜백-INTL@
292476 147945 CALLIN-DID@
292472 147945 콜린@
15. 쿼리를 통해 특정 필드의 전체 값을 얻습니다. 이 값이 null인 경우 미리 설정된 기본값이 제공됩니다.
blis_order o, blis_orderbooking ob에서 nvl(ob.bookingvalue, 0) bookingvalue를 선택합니다. 여기서 o.orderid=ob.orderid 및 o.orderid =125034 및 ob.bookingtypeid = 215 및 ob.status = 'Active'입니다.
여기서 우리는 nvl의 사용법에 대해 우려하고 있습니다. nvl(arg, value)은 이전 arg의 값이 null인 경우 반환되는 값이 다음 값임을 의미합니다.
16. 컬럼 이름은 알지만 어떤 테이블에 속해 있는지 모를 때 이 방법을 사용할 수 있습니다.
user_col_comments ucc에서 *를 선택하세요. 여기서 ucc.column_name = 'column_name'입니다.
예를 들어, user_col_comments ucc에서 *를 선택하세요. 여기서 ucc.column_name = 'ORDERID'는 ORDERID 필드가 있는 일련의 테이블을 찾습니다.
17. 두 필드를 탐색하고 정렬합니다.
blis_packageoffer pf,blis_currency cur에서 (pf.offername || ' '|| cur.name) Offercode를 선택합니다. 여기서 cur.status='Active' 및 pf.status='Active'입니다.
결과는 다음과 같습니다.
제안 코드
a1 b1
a1 b2
a2 b1
a2 b2
18.조건부 판단
pc.provisioningby = 'BPS'이고 'True'인 경우
그렇지 않으면 '거짓' 끝
sos.Sosorderserviceid, st.sosprovisionticketid를 선택하고,
(pc.provisioningby = 'BPS'이고 'True'인 경우)
그렇지 않으면 '거짓' 끝) isConnector
blis_sosprovisionticket st, blis_sosorderform sof에서,
blis_sosorderservice sos, blis_packagecomComponent PC
여기서 sof.sosorderformid = sos.sosorderformid
및 sos.sosorderserviceid = st.sosorderserviceid
sos.status = '활성' 및 st.status = '활성'
및 pc.tagname(+) = st.servicetag 및 pc.provisioningby
sof.sosorderformid = 104789
19. pc.tagname(+) =st.servicetag
pc.tagname 값이 존재하고 st.servicetag 값이 존재하지 않는 경우에도 레코드를 검색할 수 있습니다.
20. 테이블을 수동으로 편집 가능하게 만들기
st.sosprovisionticketid=102508인 blis_sosprovisionticket st에서 rowid,st.*를 선택합니다.
class12.zip을 사용하면 classNotFoundException: oracle.jdbc.driver.OracleDriver가 발생합니다. class12.jar을 사용하는 경우에는 정상입니다.classes12.zip 또는 class12.jar은 JDBC oracle 드라이버 클래스입니다.
데이터베이스 생성:
모든 테이블 보기: dba_all_tables에서 *를 선택하세요.
모든 사용자 보기: all_users에서 *를 선택하세요.
모든 DBA 사용자 보기: dba_users에서 * 선택
역할 생성:BLIS_ADMIN_ROLE 역할 생성;
새 사용자 생성: 비밀번호로 식별되는 사용자 이름 생성
테이블스페이스 사용 권한 부여: 사용자 이름에 리소스 부여
테이블 생성 권한 부여: 사용자 이름에 테이블 생성 권한 부여
데이터베이스에 연결할 수 있는 권한 부여: 사용자 이름에 세션 생성 권한 부여
모든 테이블스페이스 보기: dba_tablespaces에서 *를 선택하세요.
사용자에게 테이블 부여: BLIS_ADMIN_ROLE에 테이블 생성 권한을 부여합니다.
사용자에게 검색 기능 부여: BLIS_ADMIN_ROLE에 대한 인덱스 생성 권한을 부여합니다.
사용자에게 테이블 검색, 삽입, 업데이트 및 삭제 기능을 부여합니다. BLIS_ADMIN_ROLE에 BLIS_ACCAGENCYCOMMISSION에 대한 선택, 삽입, 업데이트, 삭제 권한을 부여합니다.
데이터베이스 내보내기: 예: exp blis/blis@dbls full=y file=d:1.dmp
ORACLE 데이터베이스에 연결하기 위한 문자열 형식은 다음과 같습니다.
jdbc:oracle:thin:@호스트:포트:SID
이는 데이터베이스 이름이 아니라 SID입니다.