SELECT PARTY.PARTY_ID AS PARTYID,
PARTY.NAME AS PARTYNAME,
PARTY.AREA_ID AS AREAID,
PARTY.DEFAULT_ID_TYPE AS DEFAULTIDTYPE,
PARTY.PARTY_TYPE_CD AS PARTYTYPECD,
PARTY.ADDRESS_ID AS ADDRESSID,
PARTY.ADDRESS_STR AS ADDRESSSTR,
PARTY.SIMPLE_SPELL AS SIMPLESPELL,
PARTY.BUSINESS_PASSWORD AS BUSINESSPASSWORD,
PARTY.CREATE_DT AS CREATEDT,
PARTY.VERSION AS PARTYVERSION,
PARTY.INDUSTRY_CLASS_CD AS INDUSTRYCLASSCD,
PARTY.QUERY_PASSWORD AS QUERYPASSWORD,
PARTY.PARTY_STATUS_CD AS PARTYSTATUSCD,
PARTY.CREATOR,
I.IDENTIDIES_TYPE_CD AS IDENTIDIESTYPECD,
I.IDENTITY_NUM AS IDENTITYNUM,
(SELECT A.NAME FROM AREA A WHERE A.AREA_ID = 21) AS AREANAME
FROM PARTY PARTY
LEFT OUTER JOIN PARTY_IDENTITY I ON PARTY.PARTY_ID = I.PARTY_ID
WHERE PARTY.AREA_ID IN
(SELECT A.AREA_ID
FROM AREA A
START WITH A.AREA_ID = 21
CONNECT BY PRIOR A.AREA_ID = A.PARENT_AREA)
AND PARTY.SIMPLE_SPELL = 'LYX'
AND ROWNUM < 10
实际开发中写的sql语句,第一次执行很慢,后来执行很快,页面点击查询时有时候失败,有时候成功
出错时系统直接报ORA-01013 用户请求取消当前的操作
请教各位高手怎么解决,用的是oracle?
PARTY.NAME AS PARTYNAME,
PARTY.AREA_ID AS AREAID,
PARTY.DEFAULT_ID_TYPE AS DEFAULTIDTYPE,
PARTY.PARTY_TYPE_CD AS PARTYTYPECD,
PARTY.ADDRESS_ID AS ADDRESSID,
PARTY.ADDRESS_STR AS ADDRESSSTR,
PARTY.SIMPLE_SPELL AS SIMPLESPELL,
PARTY.BUSINESS_PASSWORD AS BUSINESSPASSWORD,
PARTY.CREATE_DT AS CREATEDT,
PARTY.VERSION AS PARTYVERSION,
PARTY.INDUSTRY_CLASS_CD AS INDUSTRYCLASSCD,
PARTY.QUERY_PASSWORD AS QUERYPASSWORD,
PARTY.PARTY_STATUS_CD AS PARTYSTATUSCD,
PARTY.CREATOR,
I.IDENTIDIES_TYPE_CD AS IDENTIDIESTYPECD,
I.IDENTITY_NUM AS IDENTITYNUM,
(SELECT A.NAME FROM AREA A WHERE A.AREA_ID = 21) AS AREANAME
FROM PARTY PARTY
LEFT OUTER JOIN PARTY_IDENTITY I ON PARTY.PARTY_ID = I.PARTY_ID
WHERE PARTY.AREA_ID IN
(SELECT A.AREA_ID
FROM AREA A
START WITH A.AREA_ID = 21
CONNECT BY PRIOR A.AREA_ID = A.PARENT_AREA)
AND PARTY.SIMPLE_SPELL = 'LYX'
AND ROWNUM < 10
实际开发中写的sql语句,第一次执行很慢,后来执行很快,页面点击查询时有时候失败,有时候成功
出错时系统直接报ORA-01013 用户请求取消当前的操作
请教各位高手怎么解决,用的是oracle?
SELECT PARTY.PARTY_ID AS PARTYID,
PARTY.AREA_ID AS AREAID,
PARTY.NAME AS PARTYNAME,
PARTY.DEFAULT_ID_TYPE AS DEFAULTIDTYPE,
I.IDENTITY_NUM AS IDENTITYNUM,
I.IDENTIDIES_TYPE_CD AS IDENTIDIESTYPECD,
A.NAME AS AREANAME
FROM PARTY PARTY
LEFT OUTER JOIN PARTY_IDENTITY I ON PARTY.PARTY_ID = I.PARTY_ID
LEFT OUTER JOIN AREA A ON PARTY.AREA_ID = A.AREA_ID
WHERE EXISTS (SELECT 1
FROM AREA A
WHERE PARTY.AREA_ID = A.AREA_ID
START WITH A.AREA_ID = 21
CONNECT BY PRIOR A.AREA_ID = A.PARENT_AREA)
AND PARTY.PARTY_STATUS_CD = 1
AND PARTY.NAME = '李天'
AND ROWNUM < 10这样查询快了很多 能否再改进下