MySQL查询每次都显示不一致的结果 选择不同的pv.product\u variation\u键, p、 产品密钥, p、 品牌钥匙, p、 名字, p、 车辆类型, p、 简短的描述, pp.medium_图像, b、 品牌名称, b、 大牛形象, 轮胎尺寸, pv.sku, 光伏价格, pv.U价格, 光伏零售价格, pv.重量, pv.width, pv.U额定性能, pv.U保修, pv.总直径, pv.U深度, pv.max_psi, 道路危险, 道路、危险、价格、, vte.load_索引, 侧壁, vte.UTQG, 额定载荷, vte.load_范围, 轮胎速度额定值, cr评级, 如果(pv.sku!=i.sku,'true','false'), 圆(((acos(sin((41.3309413*pi()/180))*sin((sc.latitude*pi()/180))+cos((41.3309413*pi()/180))*cos((sc.latitude*pi()/180))*cos((abs(-75.7429636-sc.longitude)*pi()/180))*180/pi())*60*1.1515)作为距离 从(产品p, 产品名称:, 品牌b, 轮胎尺寸, 变型轮胎尺寸应用vts, 变型(轮胎)(外部数据), 目录一, 供应链中心(sc) 左加入客户检查cr上的cr。产品密钥=p.产品密钥 cr.is_approved=‘yes’ 左连接变化\轮胎\速度\额定值\应用vtsra上的vtsra.product\变化\键=pv.product\变化\键 左侧连接vtsra上的轮胎\速度\额定值tsr。轮胎\速度\额定值\键=tsr。轮胎\速度\额定值\键 左键连接产品图片p.product\U key=pp.product\U key 和pp.photo_type='默认图像' 其中pv.product\U key=p.product\U key 和p.status='active' b.品牌密钥=p.品牌密钥 pv.product_variation_key=vts.product_variation_key 和ts.tire_size_key=vts.tire_size_key pv.product_variation_key=vte.product_variation_key 和i.supply\u chain\u center\u key=sc.supply\u chain\u center\u key i.brand_key=p.brand_key 和sc.status='Active' 和pv.sku=i.sku 和i.当前库存>0 和(p.name,如“%win%” 或pv.U名称,如“%win%” 或p.product_类型,如“%win%” 或者像“%win%”这样的品牌名称 或LCASE(pv.sku),如“%win%”) 按pv.product\u variation\u key分组 使用分组依据时有(距离

MySQL查询每次都显示不一致的结果 选择不同的pv.product\u variation\u键, p、 产品密钥, p、 品牌钥匙, p、 名字, p、 车辆类型, p、 简短的描述, pp.medium_图像, b、 品牌名称, b、 大牛形象, 轮胎尺寸, pv.sku, 光伏价格, pv.U价格, 光伏零售价格, pv.重量, pv.width, pv.U额定性能, pv.U保修, pv.总直径, pv.U深度, pv.max_psi, 道路危险, 道路、危险、价格、, vte.load_索引, 侧壁, vte.UTQG, 额定载荷, vte.load_范围, 轮胎速度额定值, cr评级, 如果(pv.sku!=i.sku,'true','false'), 圆(((acos(sin((41.3309413*pi()/180))*sin((sc.latitude*pi()/180))+cos((41.3309413*pi()/180))*cos((sc.latitude*pi()/180))*cos((abs(-75.7429636-sc.longitude)*pi()/180))*180/pi())*60*1.1515)作为距离 从(产品p, 产品名称:, 品牌b, 轮胎尺寸, 变型轮胎尺寸应用vts, 变型(轮胎)(外部数据), 目录一, 供应链中心(sc) 左加入客户检查cr上的cr。产品密钥=p.产品密钥 cr.is_approved=‘yes’ 左连接变化\轮胎\速度\额定值\应用vtsra上的vtsra.product\变化\键=pv.product\变化\键 左侧连接vtsra上的轮胎\速度\额定值tsr。轮胎\速度\额定值\键=tsr。轮胎\速度\额定值\键 左键连接产品图片p.product\U key=pp.product\U key 和pp.photo_type='默认图像' 其中pv.product\U key=p.product\U key 和p.status='active' b.品牌密钥=p.品牌密钥 pv.product_variation_key=vts.product_variation_key 和ts.tire_size_key=vts.tire_size_key pv.product_variation_key=vte.product_variation_key 和i.supply\u chain\u center\u key=sc.supply\u chain\u center\u key i.brand_key=p.brand_key 和sc.status='Active' 和pv.sku=i.sku 和i.当前库存>0 和(p.name,如“%win%” 或pv.U名称,如“%win%” 或p.product_类型,如“%win%” 或者像“%win%”这样的品牌名称 或LCASE(pv.sku),如“%win%”) 按pv.product\u variation\u key分组 使用分组依据时有(距离,mysql,Mysql,简单规则): SELECT子句中的每一列都必须位于GROUP BY子句中,或者必须对其应用聚合函数 如果不是这样,则会显示每个组中的一个随机行。据我所知,MySQL是唯一允许此操作的DBMS,但请始终记住,这是错误的。您也可以通过设置来禁用此操作。您应该重新格式化并缩进SQL查询。不确定是否有人帮助您。尤其是对于该字符query@Pritam你能给我看看吗我们举一个两个不同结果集的例子吗?这是正确的,我以前遇到过同样的问题,因为@fancyPants说其他DBMS(如PostgreSQL)强制您

简单规则):

SELECT
子句中的每一列都必须位于
GROUP BY
子句中,或者必须对其应用聚合函数


如果不是这样,则会显示每个组中的一个随机行。据我所知,MySQL是唯一允许此操作的DBMS,但请始终记住,这是错误的。您也可以通过设置来禁用此操作。

您应该重新格式化并缩进SQL查询。不确定是否有人帮助您。尤其是对于该字符query@Pritam你能给我看看吗我们举一个两个不同结果集的例子吗?这是正确的,我以前遇到过同样的问题,因为@fancyPants说其他DBMS(如PostgreSQL)强制您指定GROUP BY中的所有列,以确保没有任何列是随机的。
SELECT DISTINCT pv.product_variation_key,
                p.product_key,
                p.brand_key,
                p.name,
                p.vehicle_type,
                p.short_description,
                pp.medium_image,
                b.brand_name,
                b.big_image,
                ts.tire_size,
                pv.sku,
                pv.price,
                pv.dealer_price,
                pv.retail_price,
                pv.weight,
                pv.width,
                pv.performance_rating,
                pv.mileage_warranty,
                pv.overall_diameter,
                pv.tread_depth,
                pv.maximum_psi,
                vte.road_hazard,
                vte.road_hazard_price,
                vte.load_index,
                vte.sidewall,
                vte.UTQG,
                vte.load_ply_rating,
                vte.load_range,
                tsr.tire_speed_rating,
                cr.rating,
                IF(pv.sku != i.sku,'true','false'),
                ROUND((((acos(sin((41.3309413*pi()/180)) * sin((sc.latitude*pi()/180)) + cos((41.3309413*pi()/180)) * cos((sc.latitude*pi()/180)) * cos((abs(-75.7429636 - sc.longitude)*pi()/180))))*180/pi())*60*1.1515) , 1) AS distance
FROM (products p,
      product_variations pv,
      brands b,
      tire_sizes ts,
      variation_tire_size_applications vts,
      variation_tire_extradatas vte,
      inventorys i,
      supply_chain_centers sc)
LEFT JOIN customer_reviews cr ON cr.product_key = p.product_key
AND cr.is_approved = 'yes'
LEFT JOIN variation_tire_speed_rating_applications vtsra ON vtsra.product_variation_key = pv.product_variation_key
LEFT JOIN tire_speed_ratings tsr ON vtsra.tire_speed_rating_key = tsr.tire_speed_rating_key
LEFT JOIN product_photos pp ON p.product_key = pp.product_key
AND pp.photo_type= 'default image'
WHERE pv.product_key = p.product_key
  AND p.status = 'active'
  AND b.brand_key = p.brand_key
  AND pv.product_variation_key = vts.product_variation_key
  AND ts.tire_size_key = vts.tire_size_key
  AND pv.product_variation_key = vte.product_variation_key
  AND i.supply_chain_center_key = sc.supply_chain_center_key
  AND i.brand_key = p.brand_key
  AND sc.status = 'Active'
  AND pv.sku=i.sku
  AND i.current_stock > 0
  AND (p.name LIKE '%win%'
       OR pv.variation_name LIKE '%win%'
       OR p.product_type LIKE '%win%'
       OR b.brand_name LIKE '%win%'
       OR LCASE(pv.sku) LIKE '%win%')
GROUP BY pv.product_variation_key
HAVING (distance <= 1000)
ORDER BY pv.retail_price ASC,
         cr.rating DESC,
         p.name ASC