당신은 Blah
을 원하는 Foo
는 Blah
이 Foo
와 대일 관계가 별도의 테이블이 될 수 있습니다. Blah
테이블의 레코드에는 부모 Foo 레코드를 식별하는 외래 키 foo_id
이 있어야합니다. Blah
에는 결과를 정렬 할 수있는 index_in_array
특성이 있습니다.
CREATE TABLE Foo (
id BIGINT,
data INT,
moreData CHAR(50)
);
CREATE TABLE Blah (
id BIGINT,
yetMoreData DOUBLE,
foo_id BIGINT,
index_in_array INT
);
주어진 Foo
의 모든 Blah
의를 얻고 싶다면 (예를 들어, 5의 ID와 Foo
), 사용 :
SELECT * FROM Blah
WHERE Blah.foo_id = 5
ORDER BY Blah.index_in_array;
것은 당신이 일반적으로, 그것을 기록을 주문하는 경우 (임의적 인 순서가 사용자에 의해 특별히 선택되지 않는 한, 예를 들어 할 일 목록의 항목 정렬과 같은) 임의적 인 것으로해서는 안됩니다. 일반적으로 추가 된 날짜 또는 이름순으로 알파벳 순으로 데이터의 "자연 발생적"속성을 정렬합니다.
NB :이 답변은 의사 코드 SQL을 의미합니다. 스크립트로 던지기 전에 특정 데이터베이스 구문으로 (그리고 일부 키와 인덱스를 추가하는 것을 잊지 마라!)
내가 사용했던 것에서 다소 뒤떨어져있는 것처럼 보이지만 요소는 그 반대의 대신에 주된 클래스를 참조한다. 그러나 이상하게 여겨진다. 일종의. – Lalaland