選択に対して「IN」をテストしているクエリがあります。
「IN」選択で複数の列を選択しているため、「オペランドに1列が含まれている必要があります」というエラーが発生します。'having'ステートメントに対してチェックする必要があるため、セレクターの一部として2番目の列が必要です。
どうすればこれを機能させて希望の効果を得ることができますか?
SELECT DISTINCT c.ID, Title, URLSegment
FROM ListingCategory c
LEFT JOIN SiteTree_Live ON c.ID = SiteTree_Live.ID
JOIN ListingCategory_Listings lc
ON c.ID = lc.ListingCategoryID
WHERE lc.ListingID IN (
SELECT Listing.ID,
( 6371 * ACOS( COS( RADIANS(-45.0227996) ) * COS( RADIANS( Location.Latitude ) ) * COS( RADIANS( Location.Longitude ) - RADIANS(168.6991149) ) + SIN( RADIANS(-45.0227996) ) * SIN( RADIANS( Location.Latitude ) ) ) ) AS distance
FROM Listing
LEFT JOIN Location ON Listing.LocationID = Location.ID
having distance < 5
);