첫 번째 테이블 (왼쪽)을 두 번째 테이블 (오른쪽)로 변환하는 쿼리를 만들 수 있습니까? 구매 주문서에 제품 코드를 통합해야합니다.테이블을 통합하는 MySQL 쿼리
PO 테이블 : 여기
첫 번째 테이블 (왼쪽)을 두 번째 테이블 (오른쪽)로 변환하는 쿼리를 만들 수 있습니까? 구매 주문서에 제품 코드를 통합해야합니다.테이블을 통합하는 MySQL 쿼리
PO 테이블 : 여기
여기에 가장 좋은 일이 될 것 윈도우 함수 오 부족이 MySQL의에서 쿼리
SET @sql = NULL;
SELECT
GROUP_CONCAT(DISTINCT
CONCAT(
'count(case when PONumber = ''',
PONumber,
''' then 1 end) AS ',
replace(PONumber, ' ', '')
)
) INTO @sql
from PO;
SET @sql = CONCAT('SELECT pt.ProductCode, ', @sql, ' from PO pt
group by ProductCode');
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
답변 해 주셔서 감사합니다. 그러나이 쿼리는 내가 필요한 결과를 얻지 못합니다. –
나는 그것에 약간 변화를 기대한다. 당신이 예제 데이터를 줄 수 있다면 시간을 절약 할 수있다! –
입니다.
하지만 특정 문제로 인해 문제가 해결됩니다.
SELECT
product_code,
(SELECT count from your_table t2
Join t1 on t2.product_code = t1.product_code and t2.po_number = 'PO1') as PO1,
(SELECT count from your_table t3
Join t1 on t3.product_code = t1.product_code and t3.po_number = 'PO2') as PO2,
(SELECT count from your_table t4
Join t1 on t4.product_code = t1.product_code and t5.po_number = 'PO3') as PO3
From your_table t1
그냥 테이블 이름과 열 이름을 사용하십시오. 불행히도 po4를 추가하면 쿼리에 추가해야합니다. 예를 들어 Postgres를 사용한다면이 문제는 발생하지 않을 것입니다.
지금까지 시도한 것을 보여줄 수 있습니까? –
몇 가지 기록으로 테이블을 덤프 할 수 있습니까? 그렇다면 완전한 쿼리를 제공 할 수 있습니다! –
@MohamedNizar 여기 내 덤프 쿼리입니다. https://www.dropbox.com/s/9wbepkmm3s5hwpp/PO%20Table.sql?dl=0 –