gpt4 book ai didi

mysql - 如何在 yii2 的查询中设置 GROUP_CONCAT?

转载 作者:行者123 更新时间:2023-11-28 23:26:42 25 4
gpt4 key购买 nike

我想提出以下查询:

SELECT GROUP_CONCAT(`user_id` SEPARATOR ',') FROM `damages` WHERE `server_id`=2

在我的主要查询中:

$q = new Query();
$dataProvider = new ActiveDataProvider([
'query' => Ticket::find()->where(['user_id' => Yii::$app->user->identity->id])
->andWhere(['in', 'user_id', [$q->select(["GROUP_CONCAT(`user_id` SEPARATOR ',')"])->from('damages')->where(['server_id' => Yii::$app->user->identity->id])]]) ,
]);

错误:

Object of class yii\db\Query could not be converted to string

当将主查询更改为:

andWhere(['in', 'user_id', $q->select(["GROUP_CONCAT(user_id SEPARATOR ',')"])->from('damages')->where(['server_id' => Yii::$app->user->identity->id])])

没有输出。

如何解决这个错误?

最佳答案

你可以触发直接查询

$projceCities = Client::findBySql('SELECT GROUP_CONCAT(DISTINCT(c_state_id)) as c_state_id FROM `ls_client`')
->asArray()
->one();

结果是这样的

Array
(
[c_state_id] => 6,10,3,22,2
)

关于mysql - 如何在 yii2 的查询中设置 GROUP_CONCAT?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39053939/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com