From 19bcd72f42d302e1d09f041a5c324759017beff7 Mon Sep 17 00:00:00 2001 From: Xang Thao Date: Fri, 7 Sep 2018 08:23:49 -0700 Subject: [PATCH 1/7] Initial commit --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index d7fbaa5..dc8f01d 100644 --- a/README.md +++ b/README.md @@ -130,3 +130,5 @@ various tables, not just the columns listed here. 6. What SQL keywords or concept would you use if you wanted to automatically delete all messages by a user if that user were deleted from the `user` table? + +* Initial commit \ No newline at end of file From 5cece7e1e9021cf9a043f22c28a92ca38214a290 Mon Sep 17 00:00:00 2001 From: Xang Thao Date: Fri, 7 Sep 2018 09:08:24 -0700 Subject: [PATCH 2/7] Created organization, user, channel, user_channel, and message tables --- queries.sql | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 queries.sql diff --git a/queries.sql b/queries.sql new file mode 100644 index 0000000..d9e6f13 --- /dev/null +++ b/queries.sql @@ -0,0 +1,31 @@ +CREATE TABLE organization( + id INTEGER PRIMARY KEY AUTOINCREMENT, + name VARCHAR(128) NOT NULL UNIQUE, + created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP +); + +CREATE TABLE channel( + id INTEGER PRIMARY KEY AUTOINCREMENT, + name VARCHAR(128) NOT NULL UNIQUE, + organization_id INTEGER REFERENCES organization(id), + created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP +); + +CREATE TABLE user( + id INTEGER PRIMARY KEY AUTOINCREMENT, + name VARCHAR(128) NOT NULL UNIQUE, +); + +CREATE TABLE user_channel( + user_id INTEGER REFERENCES user(id), + channel_id INTEGER REFERENCES channel(id) +); + +CREATE TABLE message( + id INTEGER PRIMARY KEY AUTOINCREMENT, + content TEXT, + user_id INTEGER REFERENCES user(id), + post_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP, + update_post TIMESTAMP DEFAULT CURRENT_TIMESTAMP +); \ No newline at end of file From a81a47da3b03a0994a5125c76a6ede999ba6dd40 Mon Sep 17 00:00:00 2001 From: Xang Thao Date: Fri, 7 Sep 2018 09:35:32 -0700 Subject: [PATCH 3/7] Inserted data into their table --- queries.sql | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/queries.sql b/queries.sql index d9e6f13..397fd2d 100644 --- a/queries.sql +++ b/queries.sql @@ -28,4 +28,18 @@ CREATE TABLE message( user_id INTEGER REFERENCES user(id), post_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP, update_post TIMESTAMP DEFAULT CURRENT_TIMESTAMP -); \ No newline at end of file +); + +INSERT INTO organization (name) VALUES ("Lambda School"); + +INSERT INTO user (name) VALUES ("Alice"); +INSERT INTO user (name) VALUES ("Bob"); +INSERT INTO user (name) VALUES ("Chris"); + +INSERT INTO channel (name, organization_id) VALUES ("#general", 1); +INSERT INTO channel (name, organization_id) VALUES ("#random", 1); + +INSERT INTO user_channel (user_id, channel_id) VALUES (1, 1); +INSERT INTO user_channel (user_id, channel_id) VALUES (1, 2); +INSERT INTO user_channel (user_id, channel_id) VALUES (2, 1); +INSERT INTO user_channel (user_id, channel_id) VALUES (3, 2); \ No newline at end of file From 0f3e2477ac31861b31c25f9305a1b1a6cbe36141 Mon Sep 17 00:00:00 2001 From: Xang Thao Date: Fri, 7 Sep 2018 10:02:46 -0700 Subject: [PATCH 4/7] Added dummy data for message --- README.md | 2 ++ queries.sql | 15 ++++++++++++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index dc8f01d..9c9b470 100644 --- a/README.md +++ b/README.md @@ -131,4 +131,6 @@ various tables, not just the columns listed here. delete all messages by a user if that user were deleted from the `user` table? + I think it is CASCADE... + * Initial commit \ No newline at end of file diff --git a/queries.sql b/queries.sql index 397fd2d..985c268 100644 --- a/queries.sql +++ b/queries.sql @@ -42,4 +42,17 @@ INSERT INTO channel (name, organization_id) VALUES ("#random", 1); INSERT INTO user_channel (user_id, channel_id) VALUES (1, 1); INSERT INTO user_channel (user_id, channel_id) VALUES (1, 2); INSERT INTO user_channel (user_id, channel_id) VALUES (2, 1); -INSERT INTO user_channel (user_id, channel_id) VALUES (3, 2); \ No newline at end of file +INSERT INTO user_channel (user_id, channel_id) VALUES (3, 2); + +INSERT INTO message (content, user_id) VALUES ("first from alice", 1); +INSERT INTO message (content, user_id) VALUES ("second from alice", 1); +INSERT INTO message (content, user_id) VALUES ("third from alice", 1); + +INSERT INTO message (content, user_id) VALUES ("first from bob", 2); +INSERT INTO message (content, user_id) VALUES ("second from bob", 2); +INSERT INTO message (content, user_id) VALUES ("third from bob", 2); + +INSERT INTO message (content, user_id) VALUES ("first from chris", 3); +INSERT INTO message (content, user_id) VALUES ("second from chris", 3); +INSERT INTO message (content, user_id) VALUES ("third from chris", 3); +INSERT INTO message (content, user_id) VALUES ("forth from chris", 3); \ No newline at end of file From defda29a610545eca02075abbcd564398245dd88 Mon Sep 17 00:00:00 2001 From: Xang Thao Date: Fri, 7 Sep 2018 10:59:19 -0700 Subject: [PATCH 5/7] queried all_channel all_channel_from lambda all_genarl_messages all_oragniztion all_users_messages_cout --- all_channel.txt | 4 ++++ all_channel_from_lambda.txt | 4 ++++ all_general_message.txt | 6 ++++++ all_organization.txt | 3 +++ all_users_messages_count.txt | 5 +++++ queries.sql | 23 ++++++++++++----------- test.db | Bin 0 -> 40960 bytes 7 files changed, 34 insertions(+), 11 deletions(-) create mode 100644 all_channel.txt create mode 100644 all_channel_from_lambda.txt create mode 100644 all_general_message.txt create mode 100644 all_organization.txt create mode 100644 all_users_messages_count.txt create mode 100644 test.db diff --git a/all_channel.txt b/all_channel.txt new file mode 100644 index 0000000..78bc329 --- /dev/null +++ b/all_channel.txt @@ -0,0 +1,4 @@ +id name organization_id created_at updated_at +---------- ---------- --------------- ------------------- ------------------- +1 #general 1 2018-09-07 17:12:34 2018-09-07 17:12:34 +2 #random 1 2018-09-07 17:12:34 2018-09-07 17:12:34 diff --git a/all_channel_from_lambda.txt b/all_channel_from_lambda.txt new file mode 100644 index 0000000..1a61551 --- /dev/null +++ b/all_channel_from_lambda.txt @@ -0,0 +1,4 @@ +name +---------- +#general +#random diff --git a/all_general_message.txt b/all_general_message.txt new file mode 100644 index 0000000..9e567bd --- /dev/null +++ b/all_general_message.txt @@ -0,0 +1,6 @@ +id content user_id channel_id post_time update_post id name organization_id created_at updated_at +---------- ----------------- ---------- ---------- ------------------- ------------------- ---------- ---------- --------------- ------------------- ------------------- +1 first from alice 1 1 2018-09-07 17:51:52 2018-09-07 17:51:52 1 #general 1 2018-09-07 17:39:21 2018-09-07 17:39:21 +4 first from bob 2 1 2018-09-07 17:51:52 2018-09-07 17:51:52 1 #general 1 2018-09-07 17:39:21 2018-09-07 17:39:21 +7 first from chris 3 1 2018-09-07 17:51:52 2018-09-07 17:51:52 1 #general 1 2018-09-07 17:39:21 2018-09-07 17:39:21 +8 second from chris 3 1 2018-09-07 17:51:52 2018-09-07 17:51:52 1 #general 1 2018-09-07 17:39:21 2018-09-07 17:39:21 diff --git a/all_organization.txt b/all_organization.txt new file mode 100644 index 0000000..521a4f5 --- /dev/null +++ b/all_organization.txt @@ -0,0 +1,3 @@ +id name created_at +---------- ------------- ------------------- +1 Lambda School 2018-09-07 17:12:34 diff --git a/all_users_messages_count.txt b/all_users_messages_count.txt new file mode 100644 index 0000000..a06d4e6 --- /dev/null +++ b/all_users_messages_count.txt @@ -0,0 +1,5 @@ +User Name Message Count +---------- ------------- +Chris 4 +Bob 3 +Alice 3 diff --git a/queries.sql b/queries.sql index 985c268..be4dcc8 100644 --- a/queries.sql +++ b/queries.sql @@ -14,7 +14,7 @@ CREATE TABLE channel( CREATE TABLE user( id INTEGER PRIMARY KEY AUTOINCREMENT, - name VARCHAR(128) NOT NULL UNIQUE, + name VARCHAR(128) NOT NULL UNIQUE ); CREATE TABLE user_channel( @@ -26,6 +26,7 @@ CREATE TABLE message( id INTEGER PRIMARY KEY AUTOINCREMENT, content TEXT, user_id INTEGER REFERENCES user(id), + channel_id INTEGER REFERENCES channel(id), post_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP, update_post TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); @@ -44,15 +45,15 @@ INSERT INTO user_channel (user_id, channel_id) VALUES (1, 2); INSERT INTO user_channel (user_id, channel_id) VALUES (2, 1); INSERT INTO user_channel (user_id, channel_id) VALUES (3, 2); -INSERT INTO message (content, user_id) VALUES ("first from alice", 1); -INSERT INTO message (content, user_id) VALUES ("second from alice", 1); -INSERT INTO message (content, user_id) VALUES ("third from alice", 1); +INSERT INTO message (content, user_id, channel_id) VALUES ("first from alice", 1, 1); +INSERT INTO message (content, user_id, channel_id) VALUES ("second from alice", 1, 2); +INSERT INTO message (content, user_id, channel_id) VALUES ("third from alice", 1, 2); -INSERT INTO message (content, user_id) VALUES ("first from bob", 2); -INSERT INTO message (content, user_id) VALUES ("second from bob", 2); -INSERT INTO message (content, user_id) VALUES ("third from bob", 2); +INSERT INTO message (content, user_id, channel_id) VALUES ("first from bob", 2, 1); +INSERT INTO message (content, user_id, channel_id) VALUES ("second from bob", 2, 2); +INSERT INTO message (content, user_id, channel_id) VALUES ("third from bob", 2, 2); -INSERT INTO message (content, user_id) VALUES ("first from chris", 3); -INSERT INTO message (content, user_id) VALUES ("second from chris", 3); -INSERT INTO message (content, user_id) VALUES ("third from chris", 3); -INSERT INTO message (content, user_id) VALUES ("forth from chris", 3); \ No newline at end of file +INSERT INTO message (content, user_id, channel_id) VALUES ("first from chris", 3, 1); +INSERT INTO message (content, user_id, channel_id) VALUES ("second from chris", 3, 1); +INSERT INTO message (content, user_id, channel_id) VALUES ("third from chris", 3, 2); +INSERT INTO message (content, user_id, channel_id) VALUES ("forth from chris", 3, 2); \ No newline at end of file diff --git a/test.db b/test.db new file mode 100644 index 0000000000000000000000000000000000000000..dba7b27156d15df465e7893944a1fe51f3d869c3 GIT binary patch literal 40960 zcmeI)Z*SW~90%|_pBu-{k{cRTG*y!hLDfcGMAI;J>!2kK9#l)SE=>@96uF7pMl|-8 zxDw*YXvJILb?_F3;1Rq5#AAkd1W)+$03LAXI+ZhA(V}V4>3d52=j=QG{PDHY#XfJ| zuk`{~?D&Je6NoaoOeiI93qc5}%C9BAqx6zo&_^qBPGifbEmleK2P@0}Bxc4Wxz9P} zUuL_xPcD6xy?v=DvydPF0SG_<0uX=z1R(I=2pqkVG4fMW^wX<>v%T;3-Qm#L9nDhJ zhFxjeqFGt3*&^CDYYEZoinV&ve%Ee@jmFw~rLiUM+FPR1YTjF`%R=jRy?I^k*YUl; z^#akfKM2>AyvBo(twV(((ODqxxQ@FQ4o|bBrsmPr)N#`?!vG_( zXf`nx=ID~1qiOwPr0P=pgI&k#ee481-#eu>#djGssm{QaEu`C)UBi=>bCx!B))H2s zXr%I$snZZ6j&>lNJ&G;Yy)&JM{ zXM}$(CrA*000bZa0SG_<0uX=z1Rwwb2s}T5vX&xKX1V<8!120%KjE?cgseAcid<8L zc3saMI7tutCzMkCe=GZl@W=cSU*Rrr_QcM>?~Bgfpf_aNcxUZKY3as7Le`2IRS@j;2Hk&C zLE0d%Q`v7Ey7DEJV>KikE+K2#P!Y%qc6tN(BFWe(BFLY5l;ukjxV|3yxaAOHafKmY;|fB*y_009U<00I!W&;l7b93Xm}K+CXe=IAK_ zb^o97?+O2n|0HKf5P$##AOHafKmY;|fB*y_009VGP=PdKBwtlem83LAuB`goX)1Fn z>Ny2<|DW+Eg#WJI0C+)95Me_A0uX=z1Rwwb2tWV=5P$##ARtHZvpfy^|IA=lsO Date: Fri, 7 Sep 2018 12:01:55 -0700 Subject: [PATCH 6/7] Added all alices channel --- alice_channel.txt | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 alice_channel.txt diff --git a/alice_channel.txt b/alice_channel.txt new file mode 100644 index 0000000..1a61551 --- /dev/null +++ b/alice_channel.txt @@ -0,0 +1,4 @@ +name +---------- +#general +#random From c675c23f4245e47cc98033ec79176717daa6512d Mon Sep 17 00:00:00 2001 From: Xang Thao Date: Fri, 7 Sep 2018 12:04:29 -0700 Subject: [PATCH 7/7] All users in general channel --- all_user_in_general_channel.txt | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 all_user_in_general_channel.txt diff --git a/all_user_in_general_channel.txt b/all_user_in_general_channel.txt new file mode 100644 index 0000000..d53c3f5 --- /dev/null +++ b/all_user_in_general_channel.txt @@ -0,0 +1,4 @@ +name +---------- +Alice +Bob