热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

zend_db_table_abstract中使用zend_db_select和join,JoinLe-mysql教程

今天我们来讲一下关于zend_db_table_abstract中怎么使用一些查询语句,有需要的朋友可以参考一下。

今天我们来讲一下关于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 = $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);

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"
}
}


推荐阅读
author-avatar
赵以书的话_256
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有