2017-12-12 9 views
5

테이블이 2 개 있습니다. 사용자의 타임 라인에서 모든 트윗을 가진 모든 개인 정보 및 TWEETTABLE을 가지고있는 사용자 테이블은 무엇 내가 실제로 실제로 원하는 것은mysql의 중첩 테이블

name|scr_name|tweets  |created_at_ |followers_count 
---------------------------------------------------------- 
CNN |CNN  |*tweet text*| 14nov 12:32| 38713286 

사용자 테이블

id|twitter_user_name|firstname|lastname|email 
----------------------------------------------- 
    1 | @johnsmith  |john  |smith |[email protected] 

tweettable 트위터 API를 통해 검색 :

 id|   twitter_details        | 
    -----|------------------------------------------------------- | 
     |name |scr_name|tweets  |created_at_ |followers_count| 
     | ----|--------|------------|------------|-------------- 
    1 | CNN|CNN  |*tweet text*| 14nov 12:32| 38713286 | 
    ----|------------------------------------------------------ 
    2 | BBC|BBC  |*tweet text*| 14Nov 16:43| 38713254 | 
    ----|-----|--------|------------|------------|---------------|------ 
    3 

즉, 열 안의 테이블. 1 열 신상을 아마 수행하여 오라클에서이 작업을 수행 할 수 있습니다 자신의 해당 트위터 타임 라인의 모든과 사용자 ID 및 열이있을 것이다 :

CREATE TYPE tweet_typ AS OBJECT 
( 
name VARCHAR2(20), 
scr_name VARCHAR2(25), 
tweets text, 
created_at timestamp; 
followers count VARCHAR2(25) 
) 
MEMBER PROCEDURE display_details (SELF IN OUT 
twitter_typ) 
); 

을하고 중첩 된 테이블로 twitter_details 열 내에서 이것을 사용

CREATE TABLE TWEETTABLE 
(id INT, 
    twitter_details tweet_typ 
    ); 

그리고

INSERT INTO TWEETTABLE 
    VALUES (1,twitter_typ (--extracted values goes here--)); 

를 삽입하지만 MySQL은 내가 대상으로 tweettable 정의 할 수있는 방법을 중첩 tables.So을 허용하지 않으며, COL 내부에 그것을 중첩 테이블을 mysql에서 umn twitter_details?

답변

0

당신은 그렇게 할 수 없지만 모두가하는 것처럼 할 수 있습니다. 당신이이 열을 추가

tweettable 

tweetID | userID |name|scr_name|tweets  |created_at_ |followers_count 
---------------------------------------------------------- 
    1   1 CNN |CNN  |*tweet text*| 14nov 12:32| 38713286 

으로 만 정의합니다. TweetID와 사용자 ID 중 하나 (자위 할 수 있음).

은 그럼 당신은

select * from user u join tweettable t where u.id = t.userID; 
0

를보다 효율적으로 사용하는 크로스 테이블을 조인하여 결과를 얻을. 예 : "users_tweets". 테이블 구조 :

user_id
user_id | tweed_id 

-에 twitter_details 변환 - 그것은 'user_table'와 'tweet_id'에서 id이다가 tweettable

또는

user_id | tweet_name 

다른 방법에서 'ID'입니다 문자열 :

$strDetails = json_encode($twitter_details) 

이 문자열을 $strDetails 데이터베이스에 삽입