내 MySQL 테이블 translations
의 필드에 사용 된 약어의 전체 목록을 얻으려고합니다. 이 내 테이블의 항목이,MySQL 그룹 별 REGEXP
-english- -german-
to hit sb. | jmd. schlagen
so. stole my bike | jd. hat mein Fahrrad gestohlen
I am tall | ich bin gross
to see sb. | jmd. sehen
1, 2, 3, etc. | 1, 2, 3, usw.
tree | Baum
...
내가 abbriviation를 포함하는 모든 행을 표시 할 수는 MySQL SELECT 쿼리 SELECT english FROM translations WHERE english REGEXP '[a-zA-Z]{2,}[.]' GROUP BY english
사용처럼 보일 수 있습니다 즉
-english- -german-
to hit sb. | jmd. schlagen
so. stole my bike | jd. hat mein Fahrrad gestohlen
to see sb. | jmd. sehen
1, 2, 3, etc. | 1, 2, 3, usw.
...
결과가 너무 거기에, 그룹화하는 방법입니다 필드 english
의 내용이 동일한 두 행이 표시되지 않습니다. 단, 복수의 약어가 나열되어 있습니다 (예 : sb.
). translations
(약 1 천만)의 행 수가 많기 때문에 sb.
또는 sth.
과 같은 일반적인 약어가 너무 많아서 다른 축약 목록을 작성하는 데 엄청난 시간이 소요됩니다.
예를 들어 REGEXP 패턴의 발생으로 그룹화하는 방법이 있는지 궁금합니다. SELECT english FROM translations WHERE english REGEXP '[a-zA-Z]{2,}[.]' GROUP BY english REGEXP '[a-zA-Z]{2,}[.]'
이 목록을 작성해야 phpMyAdmin에서 일하고 있습니다.
세 번째 정규형의 완벽한 예입니다. –
디자인을 수정하십시오. 마이크 B가 제안한대로 세 번째 법선으로 표준화하면 문제가 근본적으로 사라집니다. –