zend_db_table_abstract 中使用 zend_db_select 和join, Join Left
发布:smiling 来源: PHP粉丝网 添加日期:2014-10-15 13:29:58 浏览: 评论:0
今天我们来讲一下关于zend_db_table_abstract中怎么使用一些查询语句,有需要的朋友可以参考一下,代码如下:
- --
- -- 表的结构 `charge_logs`
- --
- CREATE TABLE IF NOT EXISTS `charge_logs` (
- `id` int(11) NOT NULL AUTO_INCREMENT,
- `charge_id` int(11) NOT NULL,
- `title` text NOT NULL,
- PRIMARY KEY (`id`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;
- --
- -- 转存表中的数据 `charge_logs`
- --
- INSERT INTO `charge_logs` (`id`, `charge_id`, `title`) VALUES
- (1, 1, 'XXXXXXX');
- --
- -- 表的结构 `user_charges`
- --
- CREATE TABLE IF NOT EXISTS `user_charges` (
- `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `user_id` int(10) NOT NULL,
- `charge_type` int(3) NOT NULL,
- `charge_subtype` int(3) NOT NULL,
- `charge_credits` int(3) NOT NULL,
- `buy_date` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
- `valid_to` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
- `next_charge_date` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
- `payment` varchar(50) NOT NULL,
- PRIMARY KEY (`id`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;
- --
- -- 转存表中的数据 `user_charges`
- --
- INSERT INTO `user_charges` (`id`, `user_id`, `charge_type`, `charge_subtype`, `charge_credits`, `buy_date`, `valid_to`, `next_charge_date`, `payment`) VALUES
- (1, 1, 1, 1, 100, '2011-09-09 00:00:00', '2011-09-16 00:00:00', '0000-00-00 00:00:00', 'paypal');
- 在zend_db_table_abstract中使用select 查询
- $select = $this->getAdapter()->select();
- $select->from(array('uc' => 'user_charges'))
- ->joinLeft(array('cl' => 'charge_logs'), 'uc.id = cl.charge_id', array('title'))
- ->where('uc.user_id=?', $id);
- return $this->getAdapter()->fetchAll($select);
- 如果是用了Mapper,可以这样使用
- $select = $this->getDbTable()->getAdapter()->select();
- $select->from(array('uc' => 'user_charges'))
- ->joinLeft(array('cl' => 'charge_logs'), 'uc.id = cl.charge_id', array('title'))
- ->where('uc.user_id=?', $id);
- //phpfensi.com
- return $this->getDbTable()->getAdapter()->fetchAll($select);
- 输出结果
- array(1) {
- [0] => array(10) {
- ["id"] => string(1) "1"
- ["user_id"] => string(1) "1"
- ["charge_type"] => string(1) "1"
- ["charge_subtype"] => string(1) "1"
- ["charge_credits"] => string(3) "100"
- ["buy_date"] => string(19) "2011-09-09 00:00:00"
- ["valid_to"] => string(19) "2011-09-16 00:00:00"
- ["next_charge_date"] => string(19) "0000-00-00 00:00:00"
- ["payment"] => string(6) "paypal"
- ["title"] => string(7) "XXXXXXX"
- }
- }
Tags: zend_db_table_abstract zend_db_select
相关文章
- ·怎样使MySQL安全以对抗解密高手(2013-11-11)
- ·MYSQL用户root密码为弱口令的攻击(2013-11-11)
- ·数据库系统防黑客入侵技术综述(2013-11-11)
- ·Mysql数据库的安全配置、实用技巧(2013-11-11)
- ·Mssql和Mysql的安全性分析(2013-11-11)
- ·MySQL安全问题的一点心得(2013-11-11)
- ·PHP常用MySql操作(2013-11-13)
- ·Oracle8的不安全因素及几点说明(2013-11-14)
- ·MySQL数据库下载漏洞攻击技术(2013-11-14)
- ·MySQL3.23.31之前版本的安全漏洞(2013-11-14)
- ·通过Mysql的语句生成后门木马的方法(2013-11-14)
- ·MySQL服务器内部安全数据目录访问(2013-11-14)
- ·MySQL数据库中的安全解决方案(2013-11-14)
- ·如何保护MySQL 中的重要数据(2013-11-14)
- ·为你的MySQL数据库加铸23道安全门(2013-11-14)
- ·Mysql的Root密码遗忘的解决办法(2013-11-14)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)