日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle查询使用or,查询视图,使用or就用不上索引

發布時間:2024/8/5 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle查询使用or,查询视图,使用or就用不上索引 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

select * from taccoinfo c where (c.c_identityno = '32128319820406203X'

or c.c_identityno = fchangeidentityno('32128319820406203X'));

使用or 就會全表掃描,使用and會能用上索引,請問怎么優化?

CRM_PERSONAL_CUST和CRM_ORG_CUST表的CERTCODE和ORGCERTCODE是有索引的

視圖sql

create or replace view taccoinfo as

select /*+ index(CRM_ACCOINFO) */

SYSDATE AS C_MODIFYDATE,

'-' AS C_MAILZIP,

'-' AS C_MAILADDRESS,

'-' AS C_HOMEPHONE,

'-' AS C_CORPPHONE,

'-' AS L_BILLTIME,

'-' AS L_MBILLTIME,

'-' AS L_SBILLTIME,

'-' AS C_EMOBILEPHONE,

'-' AS C_EEMAIL,

'-' AS C_EMAILADDRESS,

'-' AS C_UNPHONE,

to_char(a.CUSTID) as c_custno,

a.ACCOUNTTYPE as c_accounttype,

a.FUNDACCOUNT as c_fundacco,

a.TACHANNELID as c_agencyno,

'-' as c_netno,

'-' as c_childnetno,

a.OPENDATE as d_opendate,

a.ACCOUNTSTATUS as c_accostatus,

'-' as c_freezecause,

TO_DATE('18990101', 'YYYYMMDD') as d_backdate,

999999999 AS L_CHANGETIME,

TO_DATE('18990101', 'YYYYMMDD') as d_firstinvest,

'-' as c_password,

substr('1',0,1) as c_custtype,

b.CUSTNAME as c_custname,

b.CUSTSIMPLENAME as c_shortname,

TO_CHAR('-') as c_helpcode,

b.CERTTYPE as c_identitytype,

b.CERTCODE as c_identityno,

b.POSTCODE as c_zipcode,

b.ADDRESS as c_address,

b.HOMEPHONE as c_phone,

b.FAX as c_faxno,

b.MOBILE as c_mobileno,

b.EMAIL as c_email,

b.SEX as c_sex,

TO_CHAR(b.BIRTH, 'YYYYMMDD') as c_birthday,

b.WORK as c_vocation,

decode(b.SCHOOLAGE, '00','01','01','02','02','03','03','04','QT') as c_education,

b.YEAREARNING as c_income,

b.AGENTNAME as c_contact,

b.AGENT_CERTTYPE as c_contype,

b.AGENT_CERTCODE as c_contno,

decode(e.c_billsendflag,'按季','3','2') as c_billsendflag,

'-' as c_callcenter,

'-' as c_internet,

'-' as c_secretcode,

'-' as c_nationality,

b.CITY as c_cityno,

'-' as c_lawname,

'-' as c_shacco,

'-' as c_szacco,

'-' as c_broker,

'-' as f_agio,

b.REMARK as c_memo,

'-' as c_reserve,

'-' as c_corpname,

b.PHONE as c_corptel,

'-' as C_SPECIALCODE,

'-' as c_actcode,

a.BILLSENDPASS as c_billsendpass,

'-' as c_bill,

'-' as c_checked,

'-' as l_serialno,

b.RELATIONGRADE as c_viplevel,

decode(substr(a.FUNDACCOUNT, 1,2), '10', '10','99','99', '98') as c_tano,

(case when e.c_billsendflag = '不寄送' or e.c_billsendflag = '強制不寄送' then '1' else '0' end) as c_billsend,

'-' as c_bank_acconame,

'-' as c_bank_accono,

'-' as c_bank,

'-' as??l_trglimit,

'-' as c_modifyfrom,

'-' as c_modifyoperator,

TO_DATE('18990101', 'YYYYMMDD') as d_lastmodify,

'-' as C_BILLMISS,

'-' as C_BOURSEFLAG,

'-' as C_CUSTOMER_MEMO,

'-' as C_MANUALFLAG,

'-' as C_OTHERFUND,

'-' as C_SEND,

'-' as C_UNEMAIL,

'-' as C_UNSMS,

'-' as C_WRONGMOBILENO,

'-' as c_SERVICEUSER,

'0' as c_throwaway,

'9' as c_servicetype,

to_date('20991231', 'yyyymmdd') as d_idnovaliddate,

null as c_bp,

b.C_SPECIALACCOUNT as C_SPECIALACCOUNT,

'0'??as c_billsendpost,

'' as??c_recommender,

'' as??c_recommendertype

from CRM_ACCOINFO a ,CRM_PERSONAL_CUST b,crm_contactor e

where to_char(b.CUSTID)=to_char(a.CUSTID) and e.objectid = b.CUSTID

and e.contactortype = '0' --客戶聯系人

and e.role='1' --主聯系人

--***********CRM_ORG_CUST表關聯*******************

union ALL

select /*+ index(CRM_ACCOINFO) */

SYSDATE AS C_MODIFYDATE,

'-' AS C_MAILZIP,

'-' AS C_MAILADDRESS,

'-' AS C_HOMEPHONE,

'-' AS C_CORPPHONE,

'-' AS L_MBILLTIME,

'-' AS L_SBILLTIME,

'-' AS L_BILLTIME,

'-' AS C_EMOBILEPHONE,

'-' AS C_EEMAIL,

'-' AS C_EMAILADDRESS,

'-'??AS C_UNPHONE,

to_char(c.CUSTID) as c_custno,

c.ACCOUNTTYPE as c_accounttype,

c.FUNDACCOUNT as c_fundacco,

c.TACHANNELID as c_agencyno,

to_char('-') as c_netno,

'-'??as c_childnetno,

c.OPENDATE as d_opendate,

c.ACCOUNTSTATUS as c_accostatus,

TO_CHAR('-') as c_freezecause,

TO_DATE('18990101', 'YYYYMMDD') as d_backdate,

999999999 AS L_CHANGETIME,

TO_DATE('18990101', 'YYYYMMDD')??as d_firstinvest,

'-'??as c_password,

substr('0',0,1) as c_custtype,

d.CUSTNAME as c_custname,

d.CUSTSIMPLENAME as c_shortname,

TO_CHAR('')??as c_helpcode,

d.ORGCERTTYPE as c_identitytype,

d.ORGCERTCODE as c_identityno,

d.POSTCODE as c_zipcode,

d.ADDRESS as c_address,

d.PHONE as c_phone,

d.FAX as c_faxno,

TO_CHAR('')??as c_mobileno,

d.URL as c_email,

'-'??as c_sex,

'-' as c_birthday,

'-' as c_vocation,

'-'??as c_education,

'-'??as c_income,

d.DEALER_NAME as c_contact,

'-'??as c_contype,

'-'??as c_contno,

decode(f.c_billsendflag,'按季','3','2') as c_billsendflag,

'-' as c_callcenter,

'-' as c_internet,

'-' as c_secretcode,

d.COUNTRY as c_nationality,

d.CITY as c_cityno,

d.ARTIFICAL as c_lawname,

'-' as c_shacco,

'-' as c_szacco,

'-'??as c_broker,

'-' as f_agio,

d.REMARK as c_memo,

'-'??as c_reserve,

'-'??as c_corpname,

d.PHONE as c_corptel,

'-'??as C_SPECIALCODE,

'-'??as c_actcode,

'-'??as c_billsendpass,

'-' as c_bill,

'-'??as c_checked,

'-' as l_serialno,

d.RELATIONGRADE??as c_viplevel,

decode(substr(c.FUNDACCOUNT, 1,2), '10', '10','99','99', '98') as c_tano,

(case when f.c_billsendflag = '不寄送' or f.c_billsendflag = '強制不寄送' then '1' else '0' end) as c_billsend,

'-'??as c_bank_acconame,

'-'??as c_bank_accono,

'-'??as c_bank,

'-' as l_trglimit,

'-'??as c_modifyfrom,

'-' as c_modifyoperator,

TO_DATE('18990101', 'YYYYMMDD') as d_lastmodify,

'-' as C_BILLMISS,

'-' as C_BOURSEFLAG,

'-' as C_CUSTOMER_MEMO,

'-' as C_MANUALFLAG,

'-' as C_OTHERFUND,

'-' as C_SEND,

'-' as C_UNEMAIL,

'-' as C_UNSMS,

'-' as C_WRONGMOBILENO,

'-' as c_SERVICEUSER,

'0' as c_throwaway,

'9' as c_servicetype,

to_date('20991231', 'yyyymmdd') as d_idnovaliddate,

null as c_bp,

d.C_SPECIALACCOUNT as C_SPECIALACCOUNT,

'0'??as c_billsendpost,

'' as??c_recommender,

'' as??c_recommendertype

from CRM_ACCOINFO c

, CRM_ORG_CUST d , crm_contactor f

where??to_char(c.CUSTID)=to_char(d.CUSTID) and f.objectid = c.CUSTID

and f.contactortype = '0' --客戶聯系人

and f.role='1' --主聯系人;

總結

以上是生活随笔為你收集整理的oracle查询使用or,查询视图,使用or就用不上索引的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。