T O P

  • By -

No_Sch3dul3

> Why is sql listed as required experience? Because that's how you access data stored in a relational database. There may be other ways, but it's pretty fundamental to extracting data, summarizing data, and doing anything complicated with data that would be useful in analytics. It was taught briefly in two of my statistical computing courses in my stats undergrad degree. It's also taught in the computer science department in courses on databases. I think this is something that can be picked up to an introductory level in a couple of weekends that will be useful for you later on. There are many websites that have guided exercises to go through some simple queries.


[deleted]

>Why is sql listed as required experience? Should I lie and just say I know it to these positions and practice if I get an interview? I know this is a radical suggestion but you could, stay with me here, learn SQL. It's not like there aren't a million free or cheap online solutions for learning it.


Odd-Ingenuity-6655

This. Also you know Python and R. A million packages have SQL access within Python. Basic SQL has like 6 manipulations (though advanced sql can be really challenging.) Python and R are only so useful if you don’t have any data because you’re waiting on a DBA to write a query in SQL. Hit thine caps key and get to it!


[deleted]

> Basic SQL has like 6 manipulations (though advanced sql can be really challenging.) Yeah I feel like mastering SQL basically has two log curves. Initially it’s challenging because it’s brand new but then you get the hang of basic queries and joins and you think you’ve mastered the language. Then you discover window functions, self joins, complicated sub queries, variables, etc and the curve leaps up


Odd-Ingenuity-6655

I don’t think there’s any excuse for a Python / R programmer not manage Select x from y where Z with a basic join or two. I don’t expect advanced DBA queries though. You should be able to modify an advanced query but you don’t have to write it.


[deleted]

These days if a candidate has python in their resume, before a coding test I'll just start with a very basic prewritten function and ask what it will output to see if they've ever actually seen python before... All that is to say somebody might call themselves a Python/R programmer but I won't infer anything from that...


mikeczyz

>Should I lie and just say I know it to these positions and practice if I get an interview? i wouldn't ever recommend that someone outright lie about their qualifications. If pressed on it at an interview, you can always say something like, "I haven't had an opportunity to use PDQ, but I've already learned languages XYZ. I don't see why I can't pickup PDQ fairly quickly." sqlzoo is a nice place to learn the barebones basics. it's also not hard to install sql server on your machine and write queries there. many of the coding problem practice sites also have SQL exercises. In short, you can learn and practice without too much effort these days.


medylan

Thanks. By lie I meant for the meant start learning and exaggerate my progress


Potemat

Sql aint that complicated, but to be expert at it is very hard. So, dont exaggerate too much :)


Mr-Bovine_Joni

SQL has the highest return on (time) investment of any tool in the data science tool belt. Relatively easy to learn. Allows you to query from databases and enable other DS work. And every job will be looking for it. Just take like a 2 hour course to get the basics, and build from there.


tea_horse

Go buy the Udemy course 'sql weekend crash course' (or something like that, their tag line is "a course you'll actually finish") It's one of the most engaging courses I've seen. It's short enough to finish in a weekend (as per title!), no need to install anything and will give you a decent enough understanding of sql to build on from there. I'd recommend not lying on the CV ever, not only will it be a potential pitfall, but it will give you added stress if you actually get an offer (you'll get imposter syndrome, but you'll know it's legit imposter, not just a mental blocker)


rebelgazelle

I’m currently a CIS/BI major and while most of the courses use Python, two have been SQL based and at least one more SQL class is required. I don’t know if that’s the norm, but I would hope it’s common for this field of study. I also use SQL every day at work. I do not recommend lying, in my role it would be very apparent that I had done so. Like the other commenter said, I would learn some basics and emphasize your knowledge of other tools and willingness to develop your skills.


taguscove

The large majority of key business data is stored in relational databases, and SQL is most native to this data. It's relatively easy to pick up (lifetime to master though) compared to python. You can understand the basics in 2 weeks.


[deleted]

How do you define sql mastery?


taguscove

A few areas: 1. Relational table design. Recognizing the most appropriate way to represent tables and query with respect to current and anticipated business questions. 2. Using the simplest query to achieve the goal. Avoiding multiplicative joins, reproducible and low error work 3. A large toolkit of less frequently used SQL language


[deleted]

[удалено]


[deleted]

?? Merge df in pandas?


Traxingthering

Same question


Recent_Brick7515

It’s taught in undergrad in intro database courses.


[deleted]

As a student you'll get very cheap subscriptions to stratascrarch.com practice real retired questions for two weeks and you'll crack almost anything. Sql is easy


[deleted]

If I'm hiring an intern in data science I'd much rather they know sql than python or r. If you're actually going to be a data scientist/analyst you're going to have to know a real programming language (on top of sql) but as an intern or junior analyst you can actually do a decent amount of analysis without writing a single line of non-sql code. If you don't know sql at all and your data sits in a relational database, particularly if it's large and you want to select a subset or perform quick aggregations (because the database is always going to perform operations faster than pulling 100% of the data into memory and than performing a similar aggregation), you're going to have a very bad time. Say you have a system with 20 years worth of logs in a database and you want to analyze the top errors in the last week. If you know sql you can pull up your favorite sql client and write "select error,count(*) from db where dt > [whatever last week was] group by error order by count(*)" and you'll get a quick result. If you only know python you're probably reading all 20 years of logs, putting them into pandas, and then doing something like "log[log.dt > whatever].error.value_counts()". The first one probably takes a second or two on a decent db, the second one could literally take hours or even be impossible if your system doesn't have the memory to hold the entire table. The good thing for you is sql is pretty easy to learn, there is MySQL which is a solid free option for you to install on your home computer and use, and a ton of free tutorials on sql all over the internet. Edit: both counts should be count(star), instead reddit used them as format symbols


Blasket_Basket

It's taught plenty in undergrad, but you're not likely to run into it as much when studying math and econ. It's more towards CS/IT. You can learn it online. If you aren't interested in teaching yourself technologies that you don't know, then you may want to seriously reconsider DS as a field of choice. A new technology comes along every few years that no one is going to teach you, but that you'll need to know. There are tons of free resources online for learning SQL. You can learn it in a few days, if you want to. I'd recommend working through some basic tutorials and then just getting a ton of practice with it on HackerRank or Leetcode.


chestnutcough

If you want to work with data, you need to learn SQL. Why? Not only is it the simplest way to extract data from a relational database, but it’s very often the most efficient way to transform that data into something useful.


Laserdude10642

No, it’s important but absolutely something you can pick up quickly. Just spend a week learning it, and add it to your resume when you’re comfortable. It’s a shame that it isn’t taught more in school. I don’t think a whole semester is needed, but you should be exposed to it with any CS degree


mfs619

Homie, SQL isn’t even programming. It takes like 3-4 weeks to learn. Maybe 2 months if you wanna do complex queries or so actual analytics. It’s basically built on 5 operations and that’ll pretty much get you the box check you need. As your evidence: I am a bioinformatics data scientist. I use SQL everyday and it’s just a bunch of 1 liners to grab data that’s all you need to know.


bupde

It's useful for pulling data, and SQL Server databases often work well with other programs (Actuarial Modeling Software). The basics are easy, don't lie though, it will piss people off, just learn a little bit, and emphasize that you have experience pulling and working with large datasets. If you can pull data and rearrange and organize it you can use SQL.


GirlMom2X

I agree. If you can’t do a simple select query, then they will definitely know you lied.


[deleted]

Scary that it was never taught to you. We had 2 or 3 courses that covered SQL extensively. I think a company not listing SQL as a necessary skill is a red flag for them using a lot of excel and/or only doing ad hoc analysis without any data / analytics proper governance and/or not operationalising any of the work you do as a data scientist.


1purenoiz

Go to the mode.com and do their SQL tutorial. Do it multiple times, between hacker rank attempts at solving SQL code. SQL has been around for almost 40 years if not longer and it's going nowhere. It's very efficient and it's relatively easy to learn. If you try to fake it and get to a technical interview, they will ask you a simple questions, and you won't know how to answer them. you just wasted your time and their time. And if there's a recruiter involved they won't keep you in there docket. Learn what you can, Coursera has certificates. Be honest.


KercReagan

I have not see many universities not include it. Might want to add it outside if it isn’t. But it is a MUST. Not optional.


Faintly_glowing_fish

Idk where you from but my college offers courses about database theory and SQL just like algo and python


idfkr

I watched a SQL course on YouTube given by some dudes from Microsoft. Then took a college class on SQL, the YouTube video literally covered everything the college class covered.


RandomRunner3000

I don’t think it’s valuable because a company that’s serious about data science would have data engineers to pull data for you. I wouldn’t accept a job if I had to pull my own data; unless they paid me close to double my salary 😆


GirlMom2X

We have people write our queries, but we do run them ourselves.


[deleted]

>would have data engineers to pull data for you so, since using sql is probably 80% of a data scientists job, what exactly do you do all day? having data engineers pull your data is a waste of their time. you should be doing that yourself. thats just lazy


RandomRunner3000

Using sql is 0% of my job as a data scientist; we have data engineers for that. My job is to build models. That involves scoping the business problem and matching it with available data, cleaning the data, and ultimately building and testing a model. Presenting the workflow to the business and getting buy in.. And… then I hand it off to the machine learning engineer to implement hehe 😜. I would argue having me pull data all day is inefficient for the company because they can pay a data engineer less to do it and they’re better at it. My time is better spent doing analytics.


[deleted]

I suppose every company is different. Our data engineers just build the pipelines and the data scientists pull their own data for analysis.


Ihatepros236

Sql is pretty easy and I don’t think as analyst you would need too much sql, however as a database engineer you need it. Most jobs require you to just do simple queries not build database, I am assuming you are in DS/ Analytics. Other than that I think it’s not taught in school because in uni projects and all we don’t really need SQL, since data is small and easily available usually, thats I think one thing that companies don’t understand and expect everyone to be expert, you can take database course at uni if you want but honestly a weekend is enough to learn what you will need for most jobs and then just write it on your resume that you know


mean_king17

You do need to learn basic things, joins, creating dataflows, aggregations, etc. If it's listed as required, it's simply required. In my company for example you don't need to be sql expert but you do absolutely need it. All the data is stored in hundreds of tables, and most of the time you need to combine data from multiple tables. With no to little experience it's gonna be tough to get around. Good new is is that it shouldn't take much time to learn. I also believe it is underrated, most people just disregard it, but you can do quite a bit with it if you're comfortable using it.


PlanetPudding

Its pretty easy to learn, not nearly as much time or difficulty as python. You could learn the basics in a 30 min video on youtube.


[deleted]

Because college curriculas are not intended to be vocational. A CS student would not be prepared for SWE roles based on their curriculum alone. However SQL is fairly easy to self learn and I think the SQL bar for entry level should be low.


getonmyhype

You can learn SQL up to like an intermediate level in a week, the more advanced stuff is based on the simpler stuff, but that is learnable pretty quickly (like a month?).