我做下面的SQL呼叫使用一個表多次:在SELECT語句
SELECT dpt_id,
dpt_title,
dpt_active,
dpt_parent
FROM tbl_department ORDER BY dpt_title
其中dpt_parent
是上級部門ID(另一個部門的dpt_id
)的整數值。
我希望上述調用的結果集包含該dpt_parent的dpt_title。我在這個初步嘗試如下:
SELECT dpt_id,
dpt_title,
dpt_active,
dpt_parent,
(SELECT dpt_title
FROM tbl_department
WHERE tbl_department.dpt_id = dpt_parent
) AS parent_title
FROM tbl_department ORDER BY dpt_title
有了這種形式的調用,PARENT_TITLE的所有值都爲空 我可以看到使用這樣的同桌是混亂的,該如何解決這個問題?
嵌套查詢對性能來說是危險的,查詢分析器並不總是「看到」它可以執行JOIN。這裏顯式的JOIN更好。 – Lucero
@Lucero,如果OP的第一個代碼示例發生了變化,所以它會起作用,第二個示例是它應該如何寫入。 –
@KM,我同意,但我在評論你實際添加第二個例子之前。所有好現在;) – Lucero