2012-06-26 3 views
0
Hi iam using sqlite3 and have following table : 

userId  name  rollNumber class  section  fingerIdx   
---------- ---------- ---------- ---------- ---------- ------------------ 
1   ram   1   1   a   Right Thumb Finger 
2   ram   1   1   a   Right Index Finger 

나는 내 테이블에 위의 값을 가지고 있습니다. 필자가 요구하는 것은 fingerIdx와 userId를 제외한 다른 모든 값을 갖는 단일 결과 행을 "ram, 1, 1, a, '오른쪽 엄지 손가락, 오른쪽 인덱스 핑거"와 같이 얻는 것입니다. 이것을 얻는 방법?sqlite3 쿼리 - 값 검색

+0

와 일대 다 관계 (그래서 나) user_finger에 대한 user 테이블 (userid, name, rollnumber, class, section) 다른합니다 인덱스 핑거 ' – hage

+0

예, 똑같은 방법 ... – john

+0

내 솔루션 도움을 줬나요? – hage

답변

0

원하는 기능을 수행하는 group_concat 기능이 있습니다. (I 현재 SQLite는 없지만, 동일한 방식으로 작동한다)

이 쿼리는 MySQL과 연동하여 작동합니다 다음 description here

편집을 참조하십시오

select name, rollnumber, class, section, group_concat(fingerIdx) from so group by name, rollnumber, class, section; 

출력 :

+------+------------+-------+---------+-------------------------+ 
| name | rollnumber | class | section | group_concat(fingerIdx) | 
+------+------------+-------+---------+-------------------------+ 
| ram |   1 |  1 | a  | RightThumb,RightIndex | 
+------+------------+-------+---------+-------------------------+ 

EDIT2 :

그런데 : 당신은 테이블 디자인을 생각해야합니다! 동일한 사용자에 대해 두 개의 항목이 있지만 서로 다른 userIds가있는 것 같습니다! 더 나은 내가 그가 램, 1, 1, A, '오른쪽 엄지 손가락, 오른쪽`같은 결과를 원한다는 것을 의미한다고 생각 (userId, fingerIdx)