다른 테이블의 범위를 병합하는 데 사용하려는 "시작"및 "끝"열이 있습니다. 범위의 "설명"을 연결하고 싶습니다. 이것이 가능한가? MySQL의 단일 열에 범위를 병합 하시겠습니까?
CREATE TABLE verses
(
`id` int auto_increment primary key,
`chapter` int(11) NOT NULL,
`verse` int(11) NOT NULL,
`description` text
);
CREATE TABLE verses_range
(
`id` int auto_increment primary key,
`chapter` int(11) NOT NULL,
`start` int(11) NOT NULL,
`end` int(11)
);
지금까지이 내가 가진 것입니다하지만 난 범위의 설명 열을 병합하는 방법을 알아낼 수 없습니다 : 아래
처럼 내 스키마 모습입니다. 내가 처음에 대해 설명 값을 얻기 위해 노력하고 있어요,하지만
ID CHAPTER START END DESCRIPTION
1 2 156 162 Donec tincidunt fringilla libero et vestibulum.
2 3 53 (null) Lorem ipsum dolor sit amet, consectetur adipiscing elit.
: 그것은 단지 첫 번째 레코드에 대한 설명 제공 :
SELECT verses_range.*, verses.description
FROM verses_range
INNER JOIN verses
ON verses_range.start = verses.verse
AND verses_range.chapter = verses.chapter
내가 SQL 바이올린 (http://sqlfiddle.com/#!2/0578e/1)이이를이를 반환 다음과 같이 기록하십시오 :
Donec tincidunt fringilla libero et vestibulum. (156) Donec auctor a velit eu tempor. (157) 기타 보조제. (158) 정수기 ultricies arcu congue pulvinar. (159) 프로방스 비상 계획안. (160) Mauris eu ultrates ligula. (161) 유엔 버몬트 주 포트. (162)
그러나 이것은 범위를 준수하지 않습니다. 그것은 장 ID로 무엇이든 연결하고 있습니다 : http://sqlfiddle.com/#!2/499186/1 – TruMan1
@ TruMan1 너는 조금 더 설명 할 수 있겠 니? –
"verses_range"테이블은 "시작"과 "끝"열을 가지고 있습니다. 나는 그 범위 사이에 속하는 "구절"표에서 오직 구절을 움켜 잡고 싶습니다. 예를 들어, 오직 156-162 절입니다. – TruMan1