我有两个彼此无关的查询,第一个查询返回4列,而第二个查询只返回1列。
那么如何组合呢?
查询1-
$sql = "select postlist.* from postlist order by postlist.id desc ";
查询2 -
$sql1 = "select count (commentlist.id) as 'comments',commentlist.id,commentlist.name,commentlist.comment from postlist,commentlist where postlist.id=commentlist.post_id";
当前查询 -
$sql = "select postlist.*, count (commentlist.id) as 'comments' from postlist LEFT JOIN commentlist ON postlist.id=commentlist.post_id order by postlist.id desc ";
基本上,我想从帖子列表中返回所有记录,评论列表表格是否有任何相关评论。
这是一个数据库设计
drop table if exists postlist;
create table postlist (
id integer not null primary key autoincrement,
post varchar(1000) not null,
name varchar(80) not null,
title varchar(80) not null
);
drop table if exists commentlist;
create table commentlist (
id integer not null primary key autoincrement,
post_id integer not null,
comment varchar(80) not null,
name varchar(80) not null
);
答案 0 :(得分:0)
get()会将它转换为Collection,它比数组更强大。你可以追加它,迭代它等等。 有一个bash。希望它应该是您所需要的:http://laravel.com/docs/4.2/eloquent#collections
$items = DB::select($sql)->get();
$items1 = DB::select($sql1)->get();
$items = items->toArray();
$items1 = items1->toArray();
$items = array_merge($items, $items1);