高手们。。关于mysql用codeigniter实现语句的写法
如题:1. select prod_name from products; /*sql语句*/
$this->db->select('prod_name'); /*c i */
$query=$this->db->get('products');
那这些怎么写??
select concat(vend_name,'(',vend_country,')') from vendors order by vend_name;
select prod_id,pro_name from peoducts where prod_name like'j%t';
select prod_id,pro_name from peoducts where prod_name like'_jt';
select prod_name from products where prod_name regexp '1000' order_by prod_name;
$this->db->query('select concat(vend_name,'(',vend_country,')') from vendors order by vend_name;');
帮个忙啦~~~~~~~~~~~ 本帖最后由 zycbob 于 2010-3-25 14:27 编辑
http://codeigniter.org.cn/user_guide/database/active_record.html
$this->db->select() 可接受一个可选的第二个参数。如果你把它设为FALSE, CodeIgniter 将不会使用反引号保护你的字段或者表名 。这在进行复合查询时很有用。$this->db->select("concat(`vend_name`,'(',`vend_country`,')') as new_name", FALSE);
复杂的就用
$query = $this->db->query("要执行的 SQL");吧 好,非常好,顺便问下
select cust_id from orders where order_num in(select order_num from orderitems where prod_id ='tnt2');
这个呢??
子查询不会也是这样的吧? $pro_id = 'tnt2'; // 參數進來
$sql = 'SELECT `cust_id` FROM `orders` WHERE `order_num` IN (SELECT `order_num` FROM `orderitems` WHERE `prod_id`= ?);'; //sql
$query = $this->db->query(sql,array($pro_id)); 我。。。。有看没懂。。。 我寫的東西就是給2樓的一個補充而已,主要就是用 $this->db->query() 方法。
sql 語句反正你很熟練了,單獨組織成 $sql , 其中條件參數可以全部用?代替
query($sql,$param) 的第一個參數是需要執行的Sql語句,第二個是參數數組(根據?的數量和順序),ci 會幫你識辨參數類型的。
有問題請高手指正,我也是新人 回复 6# DasOmen
{:3_62:} 厉害。。我似乎是明白了
页:
[1]