programing

MYSQL: 테이블 "bar"에 문자열 "foo"가 포함된 모든 행 삭제

padding 2023. 9. 5. 19:46
반응형

MYSQL: 테이블 "bar"에 문자열 "foo"가 포함된 모든 행 삭제

이를 위한 명령은 무엇입니까?
MYSQL: 문자열이 포함된 모든 행 삭제"foo"테이블에"bar"

DELETE FROM bar where

field1 like '%foo%' 
OR
field2 like '%foo%'
OR
...
fieldLast like '%foo%'

제가 생각하는 열을 명시적으로 나열해야 합니다. 그래서 다음과 같은 것을...

 DELETE FROM bar WHERE col1 LIKE '%foo%' OR col2 LIKE '%foo%'....etc

이 쿼리 사용

 delete from [table name] where [column name] like '%[text to find]%'

위치에 관계없이 텍스트가 나타나면 일치합니다.

만약 당신이 foo를 찾고 있다면, 그것은 일치할 것입니다"xfoo그리고 "foox"

일반적으로 'LIKE' 키워드를 사용하여 간단한 패턴 매칭을 수행할 수 있습니다. http://dev.mysql.com/doc/refman/5.0/en/string-comparison-functions.html

쿼리 및 설명은 여기에서 확인할 수 있습니다(질문 2 참조).

http://blogs.lessthandot.com/index.php/DataMgmt/DataDesign/the-ten-most-asked-sql-server-questions--1#2

또한 비교 조건을 "좋아요" 조건으로 변경해야 할 수도 있습니다.

delete from bar where field1 like '%foo%' OR field2 like '%foo%' OR ... fieldLast like '%foo%'

모든 행에 특정 값이 포함된 모든 행을 삭제하려면 "IN" 연산자를 사용할 수 있습니다.

DELETE FROM bar where field1 in ( '%foo%','%anothertext%','%anothertext%')

사용할 수도 있습니다.LOCATE().

DELETE FROM bar WHERE LOCATE('foo', col1)<>0 OR LOCATE('foo', col2)<>0 ... etc

언급URL : https://stackoverflow.com/questions/4249079/mysql-delete-all-rows-containing-string-foo-in-table-bar

반응형