DEV Community

Cover image for SQL 50–1683. Invalid Tweets
Ben Pereira
Ben Pereira

Posted on

SQL 50–1683. Invalid Tweets

It’s an easy problem from SQL 50 with the description being:

Table: Tweets

+----------------+---------+
| Column Name    | Type    |
+----------------+---------+
| tweet_id       | int     |
| content        | varchar |
+----------------+---------+
tweet_id is the primary key (column with unique values) for this table.
This table contains all the tweets in a social media app.
Write a solution to find the IDs of the invalid tweets. The tweet is invalid if the number of characters used in the content of the tweet is strictly greater than 15.

Return the result table in any order.

The result format is in the following example.

Example 1:

Input: 
Tweets table:
+----------+----------------------------------+
| tweet_id | content                          |
+----------+----------------------------------+
| 1        | Vote for Biden                   |
| 2        | Let us make America great again! |
+----------+----------------------------------+
Output: 
+----------+
| tweet_id |
+----------+
| 2        |
+----------+
Explanation: 
Tweet 1 has length = 14. It is a valid tweet.
Tweet 2 has length = 32. It is an invalid tweet.
Enter fullscreen mode Exit fullscreen mode

The solution is simple and straight forward, you will get the tweet_id column where content is greater than 15 with any order.

This can be done using LENGTH or CHAR_LENGTH, both would work and the performance is very similar. Those two functions basically return the size of the content and with that you can check the length and return the invalid ones.

SELECT tweet_id FROM Tweets WHERE LENGTH(content) > 15;
Enter fullscreen mode Exit fullscreen mode

Runtime: 1114 ms, faster than 89.65% of MySQL online submissions for Invalid Tweets.
Memory Usage: 0B, less than 100.00% of MySQL online submissions for Invalid Tweets.

SELECT tweet_id FROM Tweets WHERE CHAR_LENGTH(content) > 15;
Enter fullscreen mode Exit fullscreen mode

Runtime: 1160 ms, faster than 84.01% of MySQL online submissions for Invalid Tweets.
Memory Usage: 0B, less than 100.00% of MySQL online submissions for Invalid Tweets.


That’s it!

If there is anything thing else to discuss feel free to drop a comment, if I missed anything let me know so I can update accordingly.

Until next post! :)

Speedy emails, satisfied customers

Postmark Image

Are delayed transactional emails costing you user satisfaction? Postmark delivers your emails almost instantly, keeping your customers happy and connected.

Sign up

Top comments (0)

Image of Docusign

🛠️ Bring your solution into Docusign. Reach over 1.6M customers.

Docusign is now extensible. Overcome challenges with disconnected products and inaccessible data by bringing your solutions into Docusign and publishing to 1.6M customers in the App Center.

Learn more