
没懂你的CID,和scid 是什么。
无限分类是无限的树形结构么?
根据无限树形结构说一下。一般情况下 是用递归调用来处理的。字段中 用id 和parentid 两个字段。 假设有一个函数 fetch是取mysql 数据的。简单写一个函数
function getdata($parentid){
$tree=fetch("parentid = {$parentid}")
foreach($tree as $k=>$v){
$tree[$k]['children']=getdata($v['id'])
}
return $tree
}
调用$tree=getdata(0)
$tree 就是树形的。
当然 如果有用框架估计更简单点。比如laravel 。定义一个$tree的模型,表中有id,和parentid两字段。模型中新增两个函数
public function childrentree()
{
return $this->hasMany(get_class($this), 'parentid', 'id')
}
public function children()
{
return $this->childrentree()
}
然后使用
tree::with(["children"])->where('parentid', 0)->get() 就可以获取树形菜单
可以。你可以测试啊
group
by
一般和
聚合函数
一起使用才有意义,比如
count
sum
avg等,使用group
by的两个要素:
(1)
出现在select后面的字段
要么是聚合函数中的,要么是group
by
中的.
(2)
要筛选结果
可以先使用where
再用group
by
或者先用group
by
再用having
下面看下
group
by多个条件的分析:
在SQL查询器输入以下语句
create
table
test
(
a
varchar(20),
b
varchar(20),
c
varchar(20)
)
insert
into
test
values(1,'a','甲')
insert
into
test
values(1,'a','甲')
insert
into
test
values(1,'a','甲')
insert
into
test
values(1,'a','甲')
insert
into
test
values(1,'a','乙')
insert
into
test
values(1,'b','乙')
insert
into
test
values(1,'b','乙')
insert
into
test
values(1,'b','乙')
按照
c
b
顺序分组
select
count(a),b,c
from
test
group
by
c,b
ELECT *FROM information_schema.PARTITIONS
WHERE TABLE_NAME='core'
sql执行的内容如下:
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME PARTITION_NAME SUBPARTITION_NAME PARTITION_ORDINAL_POSITION SUBPARTITION_ORDINAL_POSITION PARTITION_METHOD SUBPARTITION_METHOD PARTITION_EXPRESSION SUBPARTITION_EXPRESSION PARTITION_DESCRIPTION TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE CREATE_TIME UPDATE_TIME CHECK_TIME CHECKSUM PARTITION_COMMENT NODEGROUP TABLESPACE_NAME
NULL test core core_20100715 NULL 1 NULL LIST NULL TO_DAYS(stamp) NULL 734333 0 0 16384 NULL 0 4194304 NULL NULL NULL NULL default NULL
NULL test core core_20100716 NULL 2 NULL LIST NULL TO_DAYS(sta
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)