알 수 없는 열 ''field list'에 ID가 있지만 목록에 열이 있습니다.
오류:
알 수 없는 열 ''필드 리스트'의 ID
당황스럽네요.아래에서 보실 수 있듯.ID
는 아래 컬럼입니다.wp_posts
테이블:
create table wp_posts (
ID integer primary key auto_increment,
post_title varchar(30),
post_type varchar(30)
);
create table wp_postmeta (
ID integer primary key auto_increment,
post_id integer,
meta_key varchar(30) not null default '_regular_price',
meta_value integer not null
);
오류가 발생하는 쿼리:
DELETE FROM wp_posts
WHERE id IN (SELECT id
FROM (SELECT id,
post_title,
post_type,
meta_value
FROM (SELECT wp_postmeta.post_id,
post_title,
post_type,
meta_value,
Row_number()
OVER(
partition BY post_title
ORDER BY wp_postmeta.meta_value) rn
FROM wp_postmeta
JOIN wp_posts
ON wp_postmeta.post_id = wp_posts.id
WHERE wp_posts.post_type = 'Product'
AND wp_postmeta.meta_key = '_regular_price'
) t
WHERE t.rn <> 1) AS aliasx);
) t where t.rn <> 1
) AS aliasx
);
데이터베이스에 관계없이 다음 코드가 있습니다.
(SELECT id,
post_title,
post_type,
meta_value
FROM (SELECT wp_postmeta.post_id,
post_title,
post_type,
meta_value,
Row_number()
OVER(
partition BY post_title
ORDER BY wp_postmeta.meta_value) rn
거기에는 없다id
서브쿼리에서요.짐작컨대, 당신은post_id
보다는id
.
다음과 같이 쿼리를 간소화할 수 있습니다.EXISTS
DELETE wp
FROM wp_posts wp
WHERE EXISTS (SELECT 1
FROM wp_postmeta md
WHERE md.post_id = wp.id
AND wp.post_type = 'Product'
AND md.meta_key = '_regular_price')
고든 리노프가 옳다. (- 나는 그의 대답을 받아들일 것이다), 나는 실수로 빠뜨렸다.wp_posts.ID
서브쿼리부터요.해결책은 추가입니다.wp_posts.ID,
하위 하위 쿼리의 SELECT 목록으로 이동하여 상위 하위 쿼리에서 선택할 수 있도록 합니다.
(SELECT wp_posts.ID, wp_postmeta.post_id,post_title,post_type ,meta_value,
언급URL : https://stackoverflow.com/questions/54553492/unknown-column-id-in-field-list-but-the-column-is-in-the-list
'programing' 카테고리의 다른 글
잘못된 날짜/시간 형식: 1366 잘못된 문자열 값 (0) | 2022.10.27 |
---|---|
VueJ를 사용하여 테이블에 JSON 객체 표시s (0) | 2022.10.27 |
PHP 어레이에서 CSV로 (0) | 2022.10.27 |
MySQL 설명 계획에서 "Select tables optimized away"의 의미 (0) | 2022.10.27 |
WebMvcConfigurerAdapter 유형은 사용되지 않습니다. (0) | 2022.10.27 |