编程学习网 > 数据库 > Yii2查询获取键值对
2019
12-06

Yii2查询获取键值对

 Yii2查询获取键值对

使用Restfull接口,经常要用到键值对,常用的方法有两种。

方法一:ArrayHelper

$objs = Category::find()->limit(10)->all();
$all = ArrayHelper::map($objs, 'catid', 'catname');
或纯SQL查询:

$objs = Yii::$app->db->createCommand('SELECT catname,catid FROM '. Category::tableName() .' LIMIT 10')
            ->queryAll();
$all = ArrayHelper::map($objs, 'catid', 'catname');
方法二:indexBy/column

$objs = Category::find()->select(['catname', 'catid'])->limit(10)->indexBy('catid')->column();
另外使用查询生成器Query

use yii\db\Query;

$objs = (new Query())
            ->select(['catname', 'catid'])
            ->from(Category::tableName())
            ->limit(10)
            ->indexBy('catid')
            ->column();
函数 说明
all() 返回一个由行组成的数组,每一行是一个由键和值构成的关联数组
one() 返回结果集的第一行
indexBy() 某个字段作为索引
column() 返回结果集的第一列
scalar() 返回结果集第一行第一列的标量值
exists() 返回布尔值,是否存在结果
count() 返回总数
sum() 返回总和
average() 返回平均值
max() 返回最大值
min() 返回最小值

扫码二维码 获取免费视频学习资料

Python编程学习

查 看2022高级编程视频教程免费获取