[20221123]19cDBA_EXPRESSION_STATISTICS查詢expression_text中字串帶雙引號的問題
[20221123]19cDBA_EXPRESSION_STATISTICS查詢expression_text中字串帶雙引號的問題.txt
--//今天遇到一個小問題,就是查詢DBA_EXPRESSION_STATISTICS檢視 expression_text中字串帶雙引號的問題.無法使用等於方式查詢,
--//而實際上的情況是字串結尾包含\0,透過例子說明問題:
1.環境:
SYS@192.168.100.235:1521/orcl> @ pr
==============================
PORT_STRING : x86_64/Linux 2.4.xx
VERSION : 19.0.0.0.0
BANNER : Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
BANNER_FULL : Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
BANNER_LEGACY : Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
CON_ID : 0
PL/SQL procedure successfully completed.
2.測試:
SYS@192.168.100.235:1521/orcl> SELECT *
FROM SYS.DBA_EXPRESSION_STATISTICS
WHERE last_modified >= trunc(sysdate)
AND table_name = 'LIS_TEST'
AND expression_text = '"TEST_NO"';
no rows selected
SYS@192.168.100.235:1521/orcl> SELECT *
FROM SYS.DBA_EXPRESSION_STATISTICS
WHERE last_modified >= trunc(sysdate)
AND table_name = 'LIS_TEST'
AND expression_text like '%TEST_NO%'
AND rownum = 1
2 @ pr
==============================
OWNER : LIS
TABLE_NAME : LIS_TEST
EXPRESSION_ID : 3602778108646932730
SNAPSHOT : LATEST
EVALUATION_COUNT : 13136741
FIXED_COST : .0000000268215720022949
DYNAMIC_COST :
EXPRESSION_TEXT : "TEST_NO"
CREATED : 2020-11-27 17:18:02
LAST_MODIFIED : 2022-11-23 10:38:37
PL/SQL procedure successfully completed.
SYS@192.168.100.235:1521/orcl> select expression_text,dump(expression_text) from SYS.DBA_EXPRESSION_STATISTICS where last_modified >=trunc(sysdate)and table_name='LIS_TEST' and expression_text like '%TEST_NO%' and rownum=1
2 @ pr
==============================
EXPRESSION_TEXT : "TEST_NO"
DUMP(EXPRESSION_TEXT) : Typ=1 Len=10: 34,84,69,83,84,95,78,79,34,0
PL/SQL procedure successfully completed.
--//注意看實際上結尾存在\0字元.改寫如下就ok了.
SYS@192.168.100.235:1521/orcl> select * from SYS.DBA_EXPRESSION_STATISTICS where last_modified >=trunc(sysdate)and table_name='LIS_TEST' and expression_text = '"TEST_NO"'||chr(0)
2 @ pr
==============================
OWNER : LIS
TABLE_NAME : LIS_TEST
EXPRESSION_ID : 3602778108646932730
SNAPSHOT : LATEST
EVALUATION_COUNT : 13136741
FIXED_COST : .0000000268215720022949
DYNAMIC_COST :
EXPRESSION_TEXT : "TEST_NO"
CREATED : 2020-11-27 17:18:02
LAST_MODIFIED : 2022-11-23 10:38:37
==============================
OWNER : LIS
TABLE_NAME : LIS_TEST
EXPRESSION_ID : 3602778108646932730
SNAPSHOT : CUMULATIVE
EVALUATION_COUNT : 25595018601
FIXED_COST : .0000000268215720022949
DYNAMIC_COST :
EXPRESSION_TEXT : "TEST_NO"
CREATED : 2020-11-27 17:18:02
LAST_MODIFIED : 2022-11-23 10:38:37
PL/SQL procedure successfully completed.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2924692/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [20190419]bash單雙引號問題.txt
- Laravel同時接收路由引數和查詢字串中的引數Laravel路由字串
- mysql 如何查詢逗號“,”分割的字串MySql字串
- linux bash中的引號:單雙引號、反撇號Linux
- 如何在SpringBoot/Tomcat的URL查詢字串中的支援括號?Spring BootTomcat字串
- Oracle中單引號和雙引號的區別Oracle
- js字串中的三種引號JS字串
- 第二章 :查詢與排序-------2.18題目講解_在有空字串中的有序字串陣列中查詢排序字串陣列
- Golang的單引號、雙引號與反引號Golang
- lua獲取字串中單引號之間的字串字串
- JS中缺少分號可能引發的問題JS
- 關於 mysql 中的 rand () 查詢問題MySql
- CSV中欄位的去掉雙引號
- latex的雙引號 ``'
- HTTP 請求中 Token 引數帶引號導致後臺無法識別問題HTTP
- 【轉】cmd中%號和雙引號轉義
- PB帶引數帶結果集的動態SQL查詢SQL
- Mysql中的巢狀子查詢問題QSBSMySql巢狀
- HTML 單引號與雙引號HTML
- shell中定義變數用雙引號和單引號以及不用引號的區別變數
- mysql 查詢,字串帶著空格也能匹配上MySql字串
- js使用字串為什麼會出現雙引號?JS字串
- Linux中單引號和雙引號的使用方法及注意事項!Linux
- Java中關於二分查詢的問題Java
- 字串查詢(字串雜湊)字串
- shell 給字串增加單引號,並移除字串中多餘的空格字串
- sql 模糊查詢問題SQL
- JS 獲取到的 JSON 資料字串中的雙引號變成了" 怎麼解決呢?JSON字串
- python中怎麼輸出雙引號Python
- 人大金倉切割逗號拼接的字串,並使用in來查詢字串
- 什麼是字串?Python中字串必須加引號嗎?字串Python
- 雙指標查詢陣列的連續規律子陣列問題指標陣列
- excel 如何為單元格字串前後批量新增雙引號?Excel字串
- leetcode題解(查詢表問題)LeetCode
- python怎麼查詢字串中是否包含某個字串Python字串
- 【redis】關於查詢和分析redis中的bigkeys問題Redis
- Laravel 中 sql 查詢 使用 group by 報錯問題。LaravelSQL
- 序列號查詢工具KCNScrew解決多個軟體的註冊問題