kịch bản của tôi là như thế này:Tại sao bí danh cột không hoạt động trong học thuyết?
$query = Doctrine_Query::create()
->select('count(p.product_id) as num_a')
->from ('ProductComments p')
->groupBy('p.product_id')
->having('num_a =2 ');
Và sql tạo ra là:
SELECT COUNT(i.product_id) AS i__0 FROM productcomments i GROUP BY i.product_id HAVING num_a=2
Vì vậy, tôi nhận được một lỗi khi thực thi sql.
Tôi có hai câu hỏi:
tại sao là bí danh của bảng
'i'
thay vì'p'
?tại sao
'num_a'
trong mệnh đề không được thay thế bằng'i__0'
, cách khắc phục?
Cảm ơn gợi ý của bạn ...
Cảm ơn bạn đã phản hồi. Tôi hoàn toàn đồng ý với bạn rằng không cần phải biết bí danh đã tạo. Câu đố của tôi là vì bí danh đếm (p.product_id) là i__0, i__0 nên được sử dụng trong mệnh đề có thay vì "num_a". – user443281
Tôi nhận ra đây là một bài cũ, nhưng tôi tình cờ gặp nó hôm nay và muốn chỉ ra có những trường hợp bản đồ bí danh bảng nội bộ bị cản trở - nếu bạn sử dụng một hàm SQL như Within(), bạn có thể ' t sử dụng các bí danh Doctrine bên trong các tham số của hàm. –