int(56) } [1]=> array(1) { ["idarea"]=> -6ren">
gpt4 book ai didi

mysql - Yii 2 使用数组中的 where 选择数据时获取 NULL

转载 作者:行者123 更新时间:2023-11-30 21:54:54 24 4
gpt4 key购买 nike

我有一个数组 $areaID :

array(3) {
[0]=> array(1) { ["idarea"]=> int(56) }
[1]=> array(1) { ["idarea"]=> int(67) }
[2]=> array(1) { ["idarea"]=> int(116)}
}

然后,我想从 MySQL 数据库中选择以获取数组中 $areaID 的数据。我的查询:

$data = (new \yii\db\Query())
->select('*')
->from('store')
->join('LEFT JOIN','detail_area','detail_area.idareaV = store.idareas')
->join('LEFT JOIN','detail_user','detail_user.id_area = detail_area.idarea')
->where(['in','detail_area.idarea',$areaID])
->all()

但是在运行时,我得到我的 $areaID 为空。像这样:

SELECT * FROM `store` LEFT JOIN `detail_area` ON detail_area.idareaV = store.idareas LEFT JOIN `detail_user` ON detail_user.id_area = detail_area.idarea WHERE (`detail_area`.`idarea` IN (NULL, NULL, NULL))

你能帮帮我吗?谢谢...

最佳答案

使用

->where([
'detail_area.idarea' => array_values(
\yii\helpers\ArrayHelper::map($areaID, 'idarea', 'idarea')
)
])

关于mysql - Yii 2 使用数组中的 where 选择数据时获取 NULL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45606239/

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