1
SELECT REPLACE(TRANSLATE(LTRIM(RTRIM('!! ATHEN !!','!'), '!'), 'AN', '**'),'*','TROUBLE') FROM DUAL;
我很疑惑這個查詢如何工作?這個SQL查詢如何工作?
SELECT REPLACE(TRANSLATE(LTRIM(RTRIM('!! ATHEN !!','!'), '!'), 'AN', '**'),'*','TROUBLE') FROM DUAL;
我很疑惑這個查詢如何工作?這個SQL查詢如何工作?
SELECT
REPLACE(
TRANSLATE(
LTRIM(
RTRIM('!! ATHEN !!','!')
, '!')
, 'AN'
, '**')
,'*'
,'TROUBLE')
FROM DUAL;
它不適用於MySQL。
它會返回一個單一的常量值。 DUAL是帶有一條記錄的系統表。它允許你選擇一個常量值,當你實際上沒有一個表來查詢時,因爲dual始終存在。 FROM DUAL可以在MySQL中省略,它實際上被添加到MySQL中以更加兼容Oracle。
此查詢應該做什麼:
*
和*
。*
有「麻煩」所以我期望的輸出是這樣的「TROUBLETHETROUBLE」。
也就是說,當你在Oracle上運行它時。正如Nanne在評論中指出的,MySQL不會接受RTRIM中的第二個參數。
你認爲它有什麼作用? – 2011-01-30 10:39:35
我不知道這就是爲什麼我問這個問題 – 2011-01-30 10:40:21