반응형
MariaDB에서 선택한 행의 도움을 받아 열 값을 업데이트하려면 어떻게 해야 합니까?
MariaDB는 처음입니다.
자리가 있어요.각 행에는 고유한 유효성이 있습니다.
CREATE TABLE `tariff_table` (
`transportation_id` int(11) NOT NULL AUTO_INCREMENT,
`transporter` varchar(300) NOT NULL,
`valid_upto` date NOT NULL,
`expired_status` int(11) NOT NULL DEFAULT '0',
`status` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`transportation_id`)
)
표 결과:
tariff_id || transporter || valid_upto || expired_status || status
------------------------------------------------------------------
1 || Raj || 2014-12-08 || 0 || 0
2 || Ram || 2015-01-10 || 0 || 0
3 || Mani || 2014-03-06 || 0 || 0
4 || Mano || 2015-04-15 || 0 || 0
요구 사항은 선택 쿼리를 사용하여 만료된 상태를 업데이트하려면 어떻게 해야 합니까?
select tariff_id from tariff_table where valid_upto <= DATE(now());
쿼리 리턴 2 행을 선택합니다.
tariff_id
---------
1
3
id의 도움을 받아 아래와 같이 업데이트해야 합니다.
아래 결과가 필요합니다.
tariff_id || transporter || valid_upto || expired_status || status
------------------------------------------------------------------
1 || Raj || 2014-12-08 || 1 || 0
3 || Mani || 2014-03-06 || 1 || 0
도와줘.
를 사용할 수 있습니다.UPDATE
다음과 같은 스테이트먼트를 나타냅니다.
UPDATE `tariff_table`
SET `expired_status` = 1
WHERE valid_upto <= DATE(now());
사용하다IN
키워드를 지정합니다.
UPDATE tariff_table SET expired_status = 1 WHERE tariff_id
IN(select tariff_id from tariff_table where valid_upto <= DATE(now()))
또는
UPDATE tariff_table SET expired_status = 1 WHERE valid_upto <= DATE(now())
언급URL : https://stackoverflow.com/questions/27372769/how-to-updated-a-column-value-with-the-help-of-selected-row-rows-in-mariadb
반응형
'programing' 카테고리의 다른 글
.inc란 무엇이며 왜 사용하는가? (0) | 2022.09.22 |
---|---|
스크립트 시간 초과가 지났습니다. 가져오기를 완료하려면 동일한 파일을 다시 제출하십시오. 가져오기가 재개됩니다. (0) | 2022.09.22 |
모든 어레이 항목이 빈 PHP인지 확인하는 중 (0) | 2022.09.22 |
HTML 엔티티 디코드 (0) | 2022.09.22 |
"날짜():시스템의 타임존 설정에 의존하는 것은 안전하지 않습니다.." (0) | 2022.09.22 |