>데이터 베이스 >MySQL 튜토리얼 >제조업체 설정을 기반으로 MySQL에서 제품 가시성을 결정하는 방법은 무엇입니까?

제조업체 설정을 기반으로 MySQL에서 제품 가시성을 결정하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-09 16:06:16232검색

How to Determine Product Visibility in MySQL Based on Manufacturer Settings?

MySQL Select 문: 제조업체 설정을 사용하여 제품 가시성 결정

목표는 규칙에 따라 제품의 가시성을 계산하는 쿼리를 구성하는 것입니다. 제조업체 테이블에 정의되어 있습니다. 특히 제품을 볼 수 있는 위치(예: 모든 곳, 캐나다만 또는 미국만)를 결정하려고 합니다.

초기 쿼리는 하위 쿼리 내의 IF/ELSEIF 문을 사용하여 가시성을 계산하려고 시도합니다. 그러나 이 접근 방식은 올바르지 않습니다. 대신 CASE 문을 사용하여 제품 상태를 평가하고 적절한 가시성 수준을 할당하는 것을 고려해 보세요.

제공된 CASE 문에는 사소한 문제가 있습니다. 즉, 제품 상태에 관계없이 항상 첫 번째 WHEN 조건을 평가합니다. 이 문제를 해결하려면 각 WHEN 절에서 AND 조건을 제거하세요.

다음 수정된 쿼리는 원하는 결과를 제공해야 합니다.

SELECT
  t2.company_name,
  t2.expose_new,
  t2.expose_used,
  t1.title,
  t1.seller,
  t1.status,
  CASE status
      WHEN 'New' THEN t2.expose_new
      WHEN 'Used' THEN t2.expose_used
      ELSE NULL
  END as 'expose'
FROM
  `products` t1
JOIN manufacturers t2
  ON
    t2.id = t1.seller
WHERE
  t1.seller = 4238

이 쿼리는 각 제품의 상태를 평가합니다. ' 또는 '중고'로 지정하고 제조업체 테이블에 정의된 해당 가시성 수준을 반환합니다.

위 내용은 제조업체 설정을 기반으로 MySQL에서 제품 가시성을 결정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.