두 개의 쿼리가 있습니다. 또 다른 하나는 mysql 쿼리에 매우 이상한 동작이 있습니다.
INSERT INTO balik
(balik_date,
balik_time,
balik_cardID,
balik_status,
balik_type)
select
current_date(),
'00:00:00',
L_CardID,
'BELUM BALIK',
L_Type
FROM
logdetail t1
LEFT JOIN balik t2
ON t1.L_CardID = t2.balik_cardID
WHERE
t1.L_Type = 'IN'
and t1.L_Date = current_date()
AND t2.balik_cardID IS NULL"
및
첫 번째는 ... ..
UPDATE balik blk
INNER JOIN logdetail ld
ON blk.balik_cardID = ld.L_CardID
and blk.balik_date = current_date()
SET
blk.balik_status = 'SUDAH BALIK',
blk.balik_type = 'OUT',
blk.balik_time = ld.L_Time
WHERE
ld.L_Type = 'OUT'
and ld.L_Date = current_date()
내 문제는 내가 실행할 때, 제 1 및 제 2 질의 아무것도 내가 모든 기록을 삭제하지 않는 일이 없다는 것입니다 내 테이블을 미리. 이 경우 두 가지 쿼리가 모두 실행되고 매력처럼 작동합니다.
왜 이런 일이 발생합니까?
이미 내 소식을 업데이트했습니다! –
고유 한 컬럼이 있습니까? 그것은 왜 이것이 단지 한 번 작동하는지 설명 할 것입니다. –
발리크 (balik_date, balik_time, balik_cardID)에있는 내 PK 및 테이블 logdetail (L_Date, L_Time, L_CardID) 내 PK ... 답장을 주셔서 감사합니다. –