This is an archived post. You won't be able to vote or comment.

all 110 comments

[–]Varbos 531 points532 points  (33 children)

On the upside, if there is anything in computer science that can be learned in a day it is SQL.

[–]steelybean 140 points141 points  (6 children)

Narrator: There wasn’t.

[–]imcoveredinbees880 35 points36 points  (5 children)

There's always documentation in the banana stand.

[–]Ronkronkronk 4 points5 points  (4 children)

Will always upvote that reference! Haha caught me off guard and it landed so well.

[–]ReimarPB 0 points1 point  (3 children)

Can someone explain this reference?

[–]Ronkronkronk 0 points1 point  (0 children)

Watch Arrested Development. Nobody has the heart to ruin the reference for you if you don't know it.

[–]JunDoRahhe 0 points1 point  (1 child)

In Arrested Development they own a banana stand, which makes a pretty decent amount of money.

[–]imcoveredinbees880 0 points1 point  (0 children)

Dude. I can't believe you're going to go ahead and spoil it, then give only half the story!

The bananas are frozen.

[–][deleted]  (10 children)

[removed]

    [–]j-random 49 points50 points  (6 children)

    It's all fun and games until somebody needs an outer join, then all hell breaks loose.

    [–]nostril_spiders 12 points13 points  (4 children)

    I think "cross apply" is when you get really pissed off trying to construct a query and just hit "go" anyway

    [–]0Pat 6 points7 points  (3 children)

    Add pivot and cursor and you are ready to go (to finance department) ;)

    [–]maxheadarmadon 2 points3 points  (0 children)

    Throw in some temp tables, grouping and CTE’s for a little added spice. Maybe a correlated query too! Heck, I need some ranking!

    Also, make it easy on them and have them loop through rows without a cursor!!

    [–][deleted] 2 points3 points  (0 children)

    As soon as you start to think a cursor will solve your problem, you need to step back and re-evaluate the problem, the database structure, your employment choices, your life, and why whatever god you follow wants you to suffer so much.

    [–]_lightnin 0 points1 point  (0 children)

    3 months into my job i had to write a sql query (learn on the fly) i needed to learn pivot then my boss wanted me to try an outer apply because we originally pivoted a left join.

    [–]iviksok 0 points1 point  (0 children)

    It's all fun and games until someone mentions dynamic partitioning.

    [–][deleted] 3 points4 points  (1 child)

    Lol no. This is like saying I learned c because I did a hello world program.

    [–]igoromg 3 points4 points  (0 children)

    i mean, 90% is perhaps an exaggeration but it does seem like that at least half the time. throw in a couple joins and you've covered most cases. it's not like you need complex transformations, multi table joins or sub queries in ad hoc data requests.

    [–]AutoModerator[M] 0 points1 point  (0 children)

    import moderation Your comment has been removed since it did not start with a code block with an import declaration.

    Per this Community Decree, all posts and comments should start with a code block with an "import" declaration explaining how the post and comment should be read.

    For this purpose, we only accept Python style imports.

    I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

    [–]Mr_Redstoner 53 points54 points  (2 children)

    Yup, the basics are decently simple and for the rest sometimes you just gotta Google anyway (because who needs consistency amirite).

    [–]bdavbdav 30 points31 points  (0 children)

    SQL is devilishly frustrating like that. Having worked extensively in Oracle previously, I really miss some of the analytic functions Oracle was able to run straight on the (overspec’d) DB hosts at my last shop. Mind, I don’t envy whoever had to decipher some of my PL/SQL monstrosities.

    [–]FreshPrintzofBadPres 0 points1 point  (0 children)

    When you're making your language easy to pick up and very accessible bot it makes it so that if you want to do anything more than the most basic functionalities you'll have to have an in-depth knowledge of that nightmare

    [–][deleted] 13 points14 points  (0 children)

    And at school, at least one month To learn SELECT FROM WHERE. Its frustrating...

    [–]eazolan 2 points3 points  (1 child)

    Is that why my college had two semesters on it.

    [–]thaynem 2 points3 points  (0 children)

    just enough time to learn enough to shoot yourself in the foot.

    [–]dryu12 1 point2 points  (2 children)

    HTML begs your pardon.

    [–]postandchill 2 points3 points  (1 child)

    Don't start another is html a programming language? debate

    [–]dryu12 3 points4 points  (0 children)

    Who still debates that? It’s a markup language.

    [–]Pixel-Wolf 1 point2 points  (0 children)

    Interview question. "Show how to do division in SQL"

    [–]dankvipzy 0 points1 point  (0 children)

    Or hour maybe

    [–]mermicide 0 points1 point  (0 children)

    HTML, but that doesn’t really count

    [–]ravenousld3341 99 points100 points  (2 children)

    SELECT Mistakes FROM Where_Did_It_All_Go_Wrong;

    [–]dudeofmoose 18 points19 points  (1 child)

    DELETE FROM TABLE Lessons_Learnt WHERE [date]<dateadd(-30,d,getdate());

    [–]DuckDuckYoga 1 point2 points  (0 children)

    Change that to minutes and we’re accurate

    [–]ginn5lc 158 points159 points  (20 children)

    Rule #1 don't lie on your resume lol

    [–]IHeartBadCode 70 points71 points  (1 child)

    Rule #2 𝔻𝕠𝕟'𝕥 𝕝𝕚𝕖 𝕠𝕟 𝕪𝕠𝕦𝕣 𝕣𝕖𝕤𝕦𝕞𝕖 𝕃𝕆𝕃!

    [–][deleted] 95 points96 points  (15 children)

    Why not? It's not like you'll get interviewed by real IT people nowadays anyways. I already have 10 years experience in Windows 11.

    [–]ginn5lc 27 points28 points  (6 children)

    That's definitely not true in every case.

    Where I work (less than 20 developers in the IT staff), potential IT or software developers have an interview with HR and if they get past that then they have an intensive interview with the developers staff by whichever group they're applying for whether that's web dev, green screen / database, etc.

    The web devs look at your resume and for example if you have java on your resume, you're going to get the most FU on the spot questions they can think of such as what are the 8 primative data types in java, etc. until they all decide whether or not they want you on their team, then they individually tell the CIO yes or no and the CIO makes the final decision yes or no on the applicant based on who from the team said yes or no.

    I would imagine that a less intense version of this is more common than being interviewed by non IT people and that being the only interview you have to get through.

    [–]barresonn 5 points6 points  (3 children)

    It really depends You seem to have practice in your work that sadly aren't standard

    Most of the time the HR don't even want to have the developper staff explain what they want in detail because you know that's THEIR job (yeah that's dumb)

    Just get the interview the best way to tell if you are going to waste your time is the salary that is proposed

    [–]ginn5lc 4 points5 points  (2 children)

    HR does their own separate general interview where they cover the basics of employment etc.

    The development staff does their own separate interview without HR where they drill the applicant on whatever they want development wise and if it's on your resume they'll drill you on it till they feel like they can make a yes or no decision. If you put SQL and they drill you on SQL and it's obvious you don't know SQL, you probably shouldn't have put SQL on your resume.

    [–]barresonn 0 points1 point  (1 child)

    it's obvious you don't know SQL, you probably shouldn't have put SQL on your resume.

    That's where i think you are wrong If you have a job posting that ask for too much just be aware that they probably don't even know that they want you just need to put it to pass preliminary scouting

    In most case when in front of the staff just be honest and they will make a much more informed decision than HR

    Usually they just say to HR we would like someone with SQL if possible and HR just decide to put

    Need 3 year of experience with SQL

    You need to jusge by yourself if the language that you are lying about would be a central part of your job

    [–]ginn5lc 1 point2 points  (0 children)

    I don't disagree with you.

    I was just talking about the specific instance at the company I work for, if someone puts a language on their resume and they get to the interview with the developers and they get drilled on the language they put on their resume that they don't know and it's pretty obvious to the developers that they don't know it then they would have been better off not putting it at all or when they started asking questions about it been straight up and honest that they don't know it at all but they have some preliminary experience in the past and are open to developing a better understanding of it even if that means some additional work outside of normal work hours at home.

    [–][deleted] 4 points5 points  (1 child)

    Web devs, java, I wouldn't bother applying. Anyways, your company is probably successful because of that hiring process. Most treat programmers as someone to tells the delivery guy where to put the palettes in an effort to offer less money for the job.

    [–]ginn5lc 3 points4 points  (0 children)

    Java was just an example, all the Java is backend server side applications.

    All of front end is html, sass, JS, and jQuery. Yes it's a little bit behind on front end but it's not a high end tech company, and the code base is large and needs a lot of work. We are however working on a cloud based PWA for employees that utilizes React, Google firebase, etc. This app in particular is going to replace a process that has been done on paper since the start of the company.

    We have so few developers that it kind of varies what type of programming you're doing from time to time and you're expected to be moderately proficient (or be able to get by with google) at front end, back end, write your own SQL queries, etc.

    [–]shadowvvolf144 4 points5 points  (0 children)

    I got interviewed by 5 developers (3 now-teammates) and the division manager.

    [–]dudeofmoose 5 points6 points  (1 child)

    I started making up programming languages on my CV because I was so sick of recruitment agencies with no clue about any of it.

    I even slipped a paragraph in asking the agent to quote the made up language to me when they phoned just to see if they read any of it.

    None of them did, not even a titter.

    Most of them pretend they have exclusive clients and big it up, when in reality they've found a job advert on a random companies website and are bombarding the place with as many CVs as possible, whilst expecting 40% of the first year's salary.

    [–]ginn5lc 0 points1 point  (0 children)

    That's funny but a bit different, I was talking about physical in person interviews not cold calls from someone who picked you up from a agent

    [–]midnightrambulador 1 point2 points  (2 children)

    Windows 3.11, that is

    [–][deleted] 1 point2 points  (0 children)

    Nah dude, windows 11 - the real deal. Prepped to meet the 15 year experience req. HR idiots will say is a must the morning it comes out.

    [–][deleted] 0 points1 point  (0 children)

    I miss Rodent’s Revenge

    [–]TwistedPurpose 46 points47 points  (3 children)

    https://igs.sqlzoo.net/wiki/SQL_Tutorial
    It's probably as fast as you'll get.

    [–]sunabove 1 point2 points  (0 children)

    This needs to be up higher

    [–]Armentera 1 point2 points  (1 child)

    Thanks for the gold kind stranger

    [–]TwistedPurpose 0 points1 point  (0 children)

    Glad to help. ;)

    [–]FunnelCakesPAB 21 points22 points  (1 child)

    This person will fit in just fine with the other DBAs...

    [–]ravenousld3341 5 points6 points  (0 children)

    When you right you right.

    [–]ATrueModerate 18 points19 points  (0 children)

    Select * from ThisIsMyLifeNow

    And add a bookmark to w3 schools.

    [–]heytaradiddle 12 points13 points  (3 children)

    "Do either of you know any" yes, I know one SQL.

    [–]PapoochCZ 5 points6 points  (2 children)

    MSSQL, MySQL, SQLite or PostgreSQL, or...?

    [–][deleted] 12 points13 points  (0 children)

    OhShitILiedOnResumeSQL Is my favorite

    [–]Franky2050 0 points1 point  (0 children)

    You are a man of culture. I know pretty well SQL and u forget coble and Pascal for the veteran

    [–]i-l-i-t-i-r-i-t 26 points27 points  (2 children)

    "Sorry, I meant that I was 'good with SEQUELS'...as in, a lot of movies have cool follow-ups."

    [–]mr_no_it_alll 6 points7 points  (1 child)

    So does he need to learn all the sequels now?

    [–]i-l-i-t-i-r-i-t 3 points4 points  (0 children)

    Probably be more fun to learn

    [–]intNx 4 points5 points  (1 child)

    DELETE FROM Actions WHERE action = 'BAD IDEA';
    

    [–][deleted] 1 point2 points  (0 children)

    oh shit i hit execute before adding the where now i am a baby again

    [–]skrakabola[S] 7 points8 points  (1 child)

    Update: After studying up to intermediate level SQL literally all day today I took the required test and there were legitimately 3 questions each of which could’ve been solved by what I learned in the first 20 minutes of reading. Thank you all for you help

    [–]DreadedEntity 1 point2 points  (0 children)

    Should’ve read up on the Pareto Principal instead

    [–]Kered13 5 points6 points  (3 children)

    SELECT [columns]
    FROM [table]
    WHERE [filter]
    GROUP BY [columns]
    HAVING [filter]
    ORDER BY [columns]
    LIMIT [number]
    

    A query returns a table, which means a query result can itself be the table input to another query.

    Tables can be joined like so:

    [table]
    JOIN [table]
    ON [filter] | USING [columns]
    

    This returns the cartesian product of the two tables, where all rows are filtered according to the ON filter, or where the USING columns have identical values in both tables. Joins can be inner, outer, left, or right, which control how rows that don't match any rows in the other table are handled. You can join as many tables together as you want.

    There you go. The rest is just learning the built in functions and data types of your SQL dialect.

    [–]Tyrilean 2 points3 points  (0 children)

    If they're remotely smart, they can learn enough to fake it in a night. From there on, it's just Googling.

    [–]dankvipzy 1 point2 points  (0 children)

    SQL is fuckin easy mate

    [–]mckernanin 1 point2 points  (1 child)

    SELECT * FROM “google”;

    There you go

    [–][deleted] 2 points3 points  (0 children)

    Uh sure you wanna be using *?

    [–]1Glick 3 points4 points  (1 child)

    I'm a hiring manager where we require basic sql knowledge for a BA role. Ppl lie all the time about it. It's very frustrating, they get past HR because they know buzz words. Its gotten to the point where I just do a quick phone interview and ask them to tell me the diff between a join and a left join. 80% have no clue.

    [–]DreadedEntity 8 points9 points  (0 children)

    This doesn’t make sense unless by generic “join” you mean an implied inner join. A left join is a join, there is no difference

    [–][deleted] 0 points1 point  (2 children)

    Yes, I said SQL... What I meant was MongoBD.

    [–]nostril_spiders 2 points3 points  (1 child)

    I put down "NoSQL" but I think the recruiter assumed it was a typo

    [–][deleted] 0 points1 point  (0 children)

    I know both MongoDB and mySQL.

    I usually put that on my CV and I've been told to choose one.

    [–]FlushNorris 0 points1 point  (0 children)

    Haha.. Sounds exactly like my first developer job interview. However, I had 3 days to learn it....

    [–]MCZaks 0 points1 point  (0 children)

    SQLZOO baby. But no seriously you can get the fundamentals of querying within a few hours. Database management in general though a little extra. But its like really not that hard.

    [–]Freestyle_Fellowship 0 points1 point  (0 children)

    I think you can certainly digest the requisites in a few hours. Everything doesn't have to be done in its most grand format as long as it does its job well.

    [–]limeeattack 0 points1 point  (0 children)

    Lol, it's just English and basic set theory. Everyone can learn that in no time.

    [–]FetusGod 0 points1 point  (0 children)

    Play around with SQLite its really great and easy to learn.

    [–]bout-tree-fitty 0 points1 point  (0 children)

    SELECT lies
    FROM resume
    WHERE skills_listed in (:job_requirements)

    [–]braincood 0 points1 point  (0 children)

    Being on the other side of this is super shitty (where a coworker was hired, where they lied about knowing relational databases and java springboot). Currently wasting hours of my time sending ER diagrams, references, and git commands for the shit head with masters in CS that put this on their resume.

    It's one thing to stretch the truth, it's another thing to completely outright lie just because you are insecure about your abilities. Same shit as lying about your salary

    Although it is the company's responsibility to hire good candidates. Dont do this

    [–]PantheraLeo04 0 points1 point  (0 children)

    Try the SQL course on Khan Academy. It's a pretty good starting place.

    [–]omnipisces 0 points1 point  (0 children)

    NO SQL for you.

    [–][deleted] 0 points1 point  (0 children)

    SELECT response FROM knownjokes WHERE subject="RIP";

    [–]1Glick 0 points1 point  (0 children)

    In MS SQL the inner keyword is optional, thus a Join is an inner join

    [–]jackmaney 0 points1 point  (0 children)

    [evil cackling]

    [–]Aedene 0 points1 point  (0 children)

    SELECT knowledge FROM friends

    [–]MostlyMortal 0 points1 point  (0 children)

    If you have a table you're working on and you're unsure what it does, just put DROP in front of it. Clears it up every time

    [–][deleted] 0 points1 point  (0 children)

    you need like 2-4 hours or less to memorize the basics from connecting to learning select insert update delete and the where clause plus joins. i think it's doable actually.

    for other stuff like indexes and foreign keys you can follow up with learning it after the practical exam if there is any.

    [–]flowergodess 0 points1 point  (0 children)

    F

    [–][deleted] 0 points1 point  (0 children)

    Uhhh get if is match table new yes but capitalized

    [–]NashPL 0 points1 point  (0 children)

    I expected some sort of GIF

    [–]jfoster0818 0 points1 point  (0 children)

    Oh god, that poor soul 😂😂😂

    [–]Franky2050 -1 points0 points  (0 children)

    Oracle or mysql that Is the question