使用 Zend_Db 连接,无需连接表的列

发布于 2024-09-08 03:41:14 字数 689 浏览 4 评论 0原文

我使用 Zend_Db_Select 通过连接执行查询。我最终得到以下 SQL 查询:

SELECT `Utilisateur`.*, `Ressource`.*, `Acl_Cache`.*, `Role`.*, `UtilisateurRole`.* FROM `Utilisateur`
INNER JOIN `Ressource` ON Ressource.idJointure = Utilisateur.id
INNER JOIN `Acl_Cache` ON Acl_Cache.idRessource = Ressource.id
INNER JOIN `Role` ON Role.id = Acl_Cache.idRole
INNER JOIN `UtilisateurRole` ON UtilisateurRole.idRole = Role.id
WHERE (Ressource.tableJointure = 'Utilisateur') AND (UtilisateurRole.idUtilisateur = '2')

为什么 Zend_Db 添加这部分是 SELECT 子句:

, `Ressource`.*, `Acl_Cache`.*, `Role`.*, `UtilisateurRole`.*

我从来没有问过这个,我也不想要那个。 如何防止这种行为?

I use Zend_Db_Select to perform a query with a Join. I end up with the following SQL query :

SELECT `Utilisateur`.*, `Ressource`.*, `Acl_Cache`.*, `Role`.*, `UtilisateurRole`.* FROM `Utilisateur`
INNER JOIN `Ressource` ON Ressource.idJointure = Utilisateur.id
INNER JOIN `Acl_Cache` ON Acl_Cache.idRessource = Ressource.id
INNER JOIN `Role` ON Role.id = Acl_Cache.idRole
INNER JOIN `UtilisateurRole` ON UtilisateurRole.idRole = Role.id
WHERE (Ressource.tableJointure = 'Utilisateur') AND (UtilisateurRole.idUtilisateur = '2')

Why is Zend_Db adding this part is the SELECT clause :

, `Ressource`.*, `Acl_Cache`.*, `Role`.*, `UtilisateurRole`.*

I never asked this, and I don't want that. How to prevent this behavior ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

揽清风入怀 2024-09-15 03:41:14
$db->select()
   ->from(array('alias1'=>'table_i_want_all_cols_on'))
   ->joinLeft(array('alias2'=>'table_i_want_no_cols_on'),
                'alias1.id = alias2.id',
                array()
   )
   ->joinLeft(array('alias3'=>'table_i_want_some_cols_on'),
                'alias3.id = alias1.id',
                array('col1', 'col2')
   );
$db->select()
   ->from(array('alias1'=>'table_i_want_all_cols_on'))
   ->joinLeft(array('alias2'=>'table_i_want_no_cols_on'),
                'alias1.id = alias2.id',
                array()
   )
   ->joinLeft(array('alias3'=>'table_i_want_some_cols_on'),
                'alias3.id = alias1.id',
                array('col1', 'col2')
   );
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文