2016-05-01 114 views
3

我有一个表命名tb_tweetkurator_test和查询是:查询插入从选择查询

SELECT id_user, 
     COUNT(id_tweet) as JML_TWEET, 
     COUNT(IF(url = 'yes', url, NULL)) as JML_TWEET_URL, 
     COUNT(IF(mention = 'yes', mention, NULL)) as JML_TWEET_MENTION, 
     COUNT(IF(retweet = 'yes', retweet, NULL)) as JML_TWEET_RETWEET, 
     COUNT(IF(tweet_biasa = 'yes', tweet_biasa, NULL)) as JML_TWEET_BIASA 
FROM tb_tweetkurator_test 
GROUP BY id_user; 

,其结果是

id_user | JML_TWEET | JML_TWEET_URL| JML_TWEET_MENTION | JML_TWEET_RETWEET | ML_TWEET_BIASA 

16912985 | 20  | 6   | 13    | 0     | 3 
23343960 | 10  | 10   | 0     | 0     | 0 
46651600 | 20  | 9   | 17    |15     | 2 
267164011 | 20  | 14   |10     |4 

是什么让我搞不清是,我可以插入上述数据(从SELECT查询)到一个新表?

+1

您正在使用哪些DBMS? –

回答

1

是的。你可以使用CREATE-作为选从这个结果集创建新表:

CREATE TABLE new_table 
SELECT id_user, 
     COUNT(id_tweet) as JML_TWEET, 
     COUNT(IF(url = 'yes', url, NULL)) as JML_TWEET_URL, 
     COUNT(IF(mention = 'yes', mention, NULL)) as JML_TWEET_MENTION, 
     COUNT(IF(retweet = 'yes', retweet, NULL)) as JML_TWEET_RETWEET, 
     COUNT(IF(tweet_biasa = 'yes', tweet_biasa, NULL)) as JML_TWEET_BIASA 
FROM tb_tweetkurator_test 
GROUP BY id_user; 

或者将其插入到现有的表:

INSERT INTO new_table 
SELECT id_user, 
     COUNT(id_tweet) as JML_TWEET, 
     COUNT(IF(url = 'yes', url, NULL)) as JML_TWEET_URL, 
     COUNT(IF(mention = 'yes', mention, NULL)) as JML_TWEET_MENTION, 
     COUNT(IF(retweet = 'yes', retweet, NULL)) as JML_TWEET_RETWEET, 
     COUNT(IF(tweet_biasa = 'yes', tweet_biasa, NULL)) as JML_TWEET_BIASA 
FROM tb_tweetkurator_test 
GROUP BY id_user; 
1

您可以select/into这样的:

SELECT id_user, 
     COUNT(id_tweet) as JML_TWEET, 
     COUNT(IF(url = 'yes', url, NULL)) as JML_TWEET_URL, 
     COUNT(IF(mention = 'yes', mention, NULL)) as JML_TWEET_MENTION, 
     COUNT(IF(retweet = 'yes', retweet, NULL)) as JML_TWEET_RETWEET, 
     COUNT(IF(tweet_biasa = 'yes', tweet_biasa, NULL)) as JML_TWEET_BIASA 
INTO your_new_table 
FROM tb_tweetkurator_test 
GROUP BY id_user;