微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用Doctrine方法编写查询?

如何解决使用Doctrine方法编写查询?

| 我在使用Doctrine方法编写一些复杂的查询时遇到了一些问题,我很想知道如何做,也许有人可以帮助我。
1) What\'s the equivalent of SELECT * FROM users WHERE user = \'admin\' and password = 123456
2) What\'s the equivalent of SELECT name,title FROM products WHERE category_id = 4 AND title LIKE %something%
3) What\'s the equivalent of SELECT products.id,users.id FROM users INNER JOIN orders ON users.id = orders.buyer INNER JOIN products ON orders.product = products.id WHERE users.id = 2
    

解决方法

1)
UsersTable::getInstance()->findByUserAndPassword(\'admin\',123456);
2)
Doctrine_Query::create()
     ->select(\'p.name,p.title\')
     ->from(\'Products p\')
     ->where(\'category_id = ? AND title LIKE ?\',array(4,\'%something%\'));
3)
Doctrine_Query::create()
     ->select(\'p.id,u.id\')
     ->from(\'Users u\')
     ->innerJoin(\'u.Order o\')
     ->innerJoin(\'o.Products p\')
     ->where(\'u.id = ?\',2);
用户模型的订单和产品关系的真实名称可以不同(取决于实际模式)。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。