2026-08-14

[Oracle 11] 發生系統例外: ORA-00923: 在應出現的位置找不到 FROM 關鍵字

先說一下,我的 Oracle DB 與 SQL 引擎版本如下

Oracle Database 11g Release 11.2.0.2.0 - 64bit Production 
PL/SQL Release 11.2.0.2.0 - Production

這是我最近遇到的狀況。

我的 SQL 如下

SELECT FOO01 AS name,
       FOO02 AS foo_value
FROM FOO_TABLE

結果就出現錯誤了

2026-08-13

SQL 中 NOT IN 的陷阱

這是我的 SQL

WITH T AS (
	SELECT 1 AS id 
	UNION ALL 
	SELECT 2 
	UNION ALL
	SELECT 3 
	UNION ALL
	SELECT 4
),
S AS (
	SELECT 10 AS id
	UNION ALL 
	SELECT 11 
	UNION ALL 
	SELECT 12
	UNION ALL 
	SELECT 4
)
SELECT * FROM S
WHERE id NOT IN (SELECT id FROM T)

這段 SQL 執行完畢後,會得到

id
10
11
12

但是,如果今天 T 加上一筆 null 資料,即:

id
1
2
3
4
(null)

2026-08-10

SQL Server ,僅修改時間欄位的年/月/日

假設我的 table 如下

id foo_date ……
123 2020-01-05 ……
124 2020-02-16 ……
125 2020-11-21 ……

如果我要更新 foo_date,將月份改成 6 月,則可以