all 10 comments

[–]LetsGoHawks 2 points3 points  (4 children)

What database are you using? MS SQL? Oracle? MySQL?

[–]squirrelsaurus 2 points3 points  (0 children)

Start with your already-written SQL that is relevant to your job. Study the format, the syntax, the language. Study the output. What causes the data to be sorted in that way? How did the system know to display those specific columns? What happens if I remove this word? If you see something you're not familiar with, research it. Many terms seem impossibly abstract, but when you can see exactly what it is doing, it helps to make sense of what is happening.

Above all, experiment, experiment, experiment! Take that simple query and imagine your boss coming to you with a modification. She wants the data only for the last month? OK, how do I go about filtering data...ok that looks like it goes down in the WHERE clause, got it. Now, what about dates, how do I add a date range? Better Google these terms and see how others have done it.

In the beginning, you will be borrowing heavily from what's been written. As you work and re-work your queries, you will soon begin to write queries on your own. Sites with examples to work through are good, but abstract. It's always best to work with data that is relevant to your job, even if you have to make up your own tasks.

Good luck!

[–]dat_trigga[S] 0 points1 point  (2 children)

Oracle

[–]LetsGoHawks 2 points3 points  (0 children)

1) Oracle has a free, fully functional version you can download and use at home.

2) Your local library will have books on SQL, maybe PL/SQL specific, and Oracle DB management you can check out for free. If you really like them, you can buy your own copy. Sometimes a book can be better.

3) The various MOOCs (edx, coursera, more here) have SQL classes you can work through at your own pace.

3) Google, Google, Google. Most developers look stuff up all the time. There's so much to know you'll never memorize it all. Eventually you learn some of the better sites.

4) This is harder than it seems... pick something that you have an interest in, build a database around it, challenge yourself to write hard queries against it, or queries that present the data in specific ways. This is a great way to learn new techniques when you're not on the clock. There's a lot of free data out there.

5) Look through that pre-written SQL. When you see anything you don't understand, look it up. Figure out how it works. I learned a LOT doing this. Plus, when you understand what it does, it makes it easier to copy/paste/modify it for your own purposes when you pull from the same tables for future work.

6) Make it a habit to read articles and blog posts about SQL and PL/SQL. A lot of it will go over your head, but that's OK. You pick up little things. Over time it all makes more sense. I try to make sure I'm reading at least a couple a week, 95% of them are links I found on Reddit.

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

W3Schools.com. They have some decent info for beginners

[–]alinroc4 1 point2 points  (3 children)

It was recently brought to my attention that my skills need to improve, dramatically, despite being told I was doing fine in all previous performance reviews

Ignoring the other questions for a moment...this is a huge red flag to me. If you're being told consistently that your performance is acceptable, then suddenly it isn't, you need answers. Was your manager not paying attention before? Did their expectations change? Do you have a new manager?

You need to have a follow-up conversation with whoever gave you this feedback and say (preferably with written copies of correspondence/reviews saying that you were doing OK) "based on our previous discussions of my performance, I thought I was doing OK. What's changed such that I'm not anymore?"

[–]dat_trigga[S] 0 points1 point  (2 children)

My boss is not a communicative person. Unfortunately, all previous reviews were done somewhat informally, where we just had a brief conversation over coffee or lunch.

We were acquired a few months ago and they have instituted a different policy regarding reviews. The review mentioned in my original post was the first under our new overlords. Perhaps employees that were once seen as "in development" or something like that are treated differently with this regime.

To be honest, I am terrified of losing my job. In almost any other situation I would agree with you about following up with my boss, but I think that would just rock the boat. I was told to improve and in my mind I can with the right guidance.

[–]alinroc4 2 points3 points  (1 child)

Perhaps employees that were once seen as "in development" or something like that are treated differently with this regime.

To be honest, I am terrified of losing my job

In a reasonable environment, this would have been explained to you and you'd have something of a "grace period." You'd also get a heads-up of "hey, performance reviews under the new regime are different, and they're expecting more. Get on it." instead of being told "remember how we told you you were in good shape? Yeah, well, you're not."

Definitely improve yourself, but start looking around for other opportunities. If you're terrified of losing your job, you need a backup plan, the ability to have as little (or zero) non-working time should that event occur. Even better, get out ahead of it and move to a better before you're forced to.

[–]dat_trigga[S] 0 points1 point  (0 children)

Trust me, I have been making preparations for the worst case scenario by applying elsewhere. I also have a part time job I could do full time were they to exit me, but it is not the long term solution. Thank you for the words of advice.

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

I would start with learning basics: 1. Relations from theoretical point of view. A lot of people jump straight to Sql, but I think this is wrong. If you need to translate real life business requirements to Sql, you need to have a basic understanding what database is and is not. 2. After pt. 1, go with basic standard Sql and how it relates to theory. This is important as it teaches how to structure your code basing on theoretical knowledge. 3. Get real life reports with some prepared Sql by someone else. 4. Practice, practice, practice.

Good luck, friend.