簡體   English   中英

Yii2 GridView:SQLSTATE[23000]:違反完整性約束:1052 order 子句中的列“id”不明確

[英]Yii2 GridView: SQLSTATE[23000]: Integrity constraint violation: 1052 Column 'id' in order clause is ambiguous

有人可以解釋我為什么會收到此錯誤嗎? 我試圖搜索相關信息,但找不到有用的信息。

這是我的功能:

$query = Recipient::find()->from('recipient')
            ->joinWith(['delivers'])
     
    $dataProvider = new ActiveDataProvider([
        'query' => $query,

    ]);

錯誤是:

SQLSTATE[23000]:違反完整性約束:1052 order 子句中的列“id”不明確

正在執行的 SQL 是:

SELECT COUNT(*) FROM `recipient` 
LEFT JOIN `deliver` ON `recipient`.`id` = `deliver`.`recipient_id` 
ORDER BY `id` DESC

嘗試

Recipient::find()->from('recipient')->joinWith(['delivers'])->orderBy(['`recipient`.`id`' => SORT_ASC]);

在上面的示例中,明確指定了列名以避免歧義錯誤。

代碼似乎不完整。 發布更多代碼,以便我們為您提供幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM