これが私のSQLクエリです:
select
t1.id, t1.text as text, l.likes as likecount
from
table1 as t1 left join (select feed_id, count(user_id) as likes
from likes
where feed_id=12345) l
on t1.id=l.feed_id where t1.id=12345
このクエリは、特定のエントリを 1 つ取得し、そのエントリを気に入った人の数を示します。この例では、エントリ番号は 12345 です。エントリに少なくとも 1 つの「いいね」がある場合、このクエリは正常に機能しています。しかし、いいねのないエントリに対してこのクエリを実行すると、列フィードを null にすることはできないというエラーが表示されます。
このエラーの理由は、内部クエリが feed_id null と likes 0 の行を返し、テーブルの結合に問題が生じているためです。もう 1 つの興味深い要因は、このファイルがローカル サーバーでは動作しているが、ライブ サーバーでは動作していないことです。