我的问题涉及Oracle 11gr2以及SQL查询中索引的使用.请帮我解决下面的问题,我无法在此查询中使用索引:
SELECT ListingManagerID,
FirstName,
LastName,
PrimaryPhone,
AlternatePhone,
Email,
UserName,
Password,
RecallGuid,
CustomerSince,
PWChangeRequired,
PWExpireDate,
CallingHours,
CreateDate,
CreateIPAddress,
LastLogin,
AutoRenewFlag,
LastUpdated,
UpdatedBy,
AutoRenewRemovedDate,
AutoRenewDate,
isSupplier,
PrefferedLanguage,
AboutMe,
PictureFilePath,
IsProfilePictureDisplay,
LocaleID,
Address1,
Address2,
CityID,
CountryID,
StateProvinceID,
PostalCode,
RegistrationSource,
PPCTypeID,
GhostUser,
ProfileId,
TimezoneID,
OCA
FROM ListingManager
WHERE trim(lower(LISTINGMANAGERID)) = 'e.kkagacoe4aaae7rnr9lua5'
Run Code Online (Sandbox Code Playgroud)
SQL> CREATE INDEX IDX_LISTINGMANAGER_ID ON listingmanager (LOWER(listingmanagerid));
索引已创建.
SQL> EXEC DBMS_STATS.GATHER_TABLE_STATS('INTERSHOP', 'LISTINGMANAGER' , CASCADE=>TRUE);
PL/SQL过程成功完成.
索引已创建Listingmanager Column,但仍然执行计划显示全表扫描.我不知道为什么还会发生全表扫描.
ListingManagerID是表的主键,我可以修改主键创建的索引吗?
PLAN_TABLE_OUTPUT
--------------------------------------------------
| Id | Operation | Name | Rows …Run Code Online (Sandbox Code Playgroud)