구조화 테이블을 결합
정보를 데이터베이스 테이블에 액세스할 때, 우리는 5 월 때로는 2 개 이상의 필요가 서로 다른 테이블에서 데이터를 보는 것처럼 이전에 우리가 본 사례. 또 다른 유용한 방법은 관계형 데이터에 액세스하려면, 전화를 결합하는 기술을 사용합니다. 우리가 말하는 "결합,"우리는 실제 필드를 비교하는 것을 의미합니다 자신의 이름을 우리가 서로 다른 테이블이 아닌 그들의 실제 데이터를 이내 (물론 성명을 실행할 때 실제 데이터가에 비해).
예를 들어 우리가 이용할 수있는 방법의 결합, 이전보기로 돌아 보자. 를 검색할 우리가 원하는 가정해 봅시다 헨리의 원수에 대한 자세한 목록은 자신의 이름뿐만 아니라;은 이전 예, 우리가 첫 번째 실행이 성명 :
플레이어 = relateenemies 어디에 적을를 선택하십시오에서 '헨리'
그런 다음, 각 카테고리의 이름을 목록에, 우리는 다음과 같은 구조화 성명 전화 :
선택 * playerdata는 어디에서 사용자 이름을 = '????'; (어디에????를 나타냅니다 목록에있는 각각의 이름을 차례로)
의 결합으로 기술, 그러나,이 한 장소에서 작업을 수행할 수있습니다 구조화 성명을 적은 코드를 의미합니다. 그것은 또한 빠른 실행 (두 개의 문장을 사용 하기보다는). 여기가 바로 우리가 필요로 할 조인 성명이 :
mysql>을 선택 *에서 playerdata, relateenemies 어디에 playerdata.username = relateenemies.enemy 및 relateenemies.player = '헨리';
그래서 처음에 우리는이 모두를 playerdata에서 모든 데이터를 선택하고 테이블과 relateenemies의 결합에 따라 다음 조건을 배치 테이블, 그래서 선택한에만 데이터가 사용자 이름을 필드에 playerdata 테이블은 어디에 적을 필드에 같음 relateenemies 테이블을합니다. 만약 우리가 그것을 그냥 남겨 단일 조건, 그것은 각각의 테이블을 모두에서 전체 결과를 반환합니다 적을 relateenemies 테이블에서합니다. 그래서 우리의 두 번째 조건 헨리의 원수를 제한하는 결과를 비교하여에만 표시 필드에 플레이어의 relateenemies 테이블을 문자열을 헨리합니다. 유용, 그렇지?
이것은 조지 ionescu 기사를 추가한 면책 조항 : 우리의 웹사이트는이 문서에 포함된 정보에 대한 책임을지지 않습니다. 이 문서가 어떠한 방식 으로든 반영하는 것으로,보기, 의견, 생각이나 신념의 기사 디렉토리 직원합니다.
번역 참고 사항 :이 문서 "참여 구조화 테이블"을 번역하는 자동 번역 서비스를 사용합니다. 우리가 진심으로 번역 오류가 발생했습니다 끼쳐 드려 죄송합니다. 이해를 주셔서 감사합니다.