oracle+资料类型不一致吗,oracle数据库中,字段类型不一致,导致查询慢
最近一個(gè)WEBSERVICE突然變慢了,后查詢發(fā)現(xiàn),后臺(tái)查詢也非常慢(記錄條數(shù)800多萬),索引也有,如下語句
SELECT P.ID,P.RECORD_ID,P.KEY_NAME,P.KEY_CONTENT
FROM MED_EMR_PATIENT_RECORD R,MED_EMR_RECORD_EXTRACTINFO P
WHERE R.ID = P.RECORD_ID
AND R.PATIENT_ID='55'
AND R.VISIT_ID='1030951729'
AND P.KEY_NAME='主訴'
執(zhí)行計(jì)劃中,發(fā)現(xiàn)MED_EMR_RECORD_EXTRACTINFO 是全表掃描
發(fā)現(xiàn)MED_EMR_PATIENT_RECORD表的id為nvarchar2,MED_EMR_RECORD_EXTRACTINFO 的reocrd_id為varchar2,
由于表數(shù)據(jù)量較大,更改字段類型較為困難,將查詢語句改為以下,速度馬上提升很多:
SELECT P.ID,P.RECORD_ID,P.KEY_NAME,P.KEY_CONTENT? ? ? ? ? ? ? ? ? ? ? FROM MED_EMR_PATIENT_RECORD R,MED_EMR_RECORD_EXTRACTINFO P ? ? ? ? ? ? ? ? ? ? WHERE to_char(R.ID) = P.RECORD_ID ? ? ? ? ? ? ? ? ? ? AND R.PATIENT_ID='55' ? ? ? ? ? ? ? ? ? ? AND R.VISIT_ID='1030951729' ? ? ? ? ? ? ? ? ? ? AND P.KEY_NAME='主訴'
總結(jié)
以上是生活随笔為你收集整理的oracle+资料类型不一致吗,oracle数据库中,字段类型不一致,导致查询慢的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android studio有错误,清单
- 下一篇: redis 查看key的有效期_redi