fix logic about join

This commit is contained in:
DATAEXPRESS\4734
2026-03-10 14:27:48 +08:00
parent e7f672ddff
commit 89106d03b7
+14 -3
View File
@@ -16,6 +16,7 @@ CREATE OR REPLACE PROCEDURE orm_exec_page_v2 (
Item Who Date Modify Docs
==== ========== ========== ================================================
1 Michael 2025/07/11 根據 ms-sql 的版本, 利用 ChatGPT/DeepSeek 等AI, 改寫為 Mariadb 版
2 Michael 2026/03/09 欄位加入 ma. 若擴充欄位檔 sys_joinfields 有定義
*/
BEGIN
@@ -89,11 +90,21 @@ BEGIN
SELECT joinfields, jointables INTO _joinfields, _jointables
FROM sys_joinfields WHERE menuid = _menuid;
SET _alias = 'ma.';
SET _tbl_alias = ' ma ';
IF _joinfields IS NOT NULL AND _joinfields <> '' THEN
SET _alias = 'ma.';
SET _tbl_alias = ' ma ';
ELSE
SET _alias = '';
SET _tbl_alias = '';
END IF;
-- 統一加 alias 邏輯
IF LOCATE('ma.', _orderby) = 0 THEN
SET _orderby = CONCAT(_alias, _orderby);
END IF;
-- 應該在此處把相關欄位都加上 alias 2026/03/09 Michael
END IF;
-- 建立 WHERE 條件
@@ -115,7 +126,7 @@ BEGIN
SET _wheresql = CONCAT(
_wheresql,
IF(v_pos > 1, ' OR ', ''),
v_field,
_alias, v_field,
' LIKE ',
QUOTE(CONCAT('%', _where_value, '%'))
);