Skip to main content

SQL Server Views

As a Full Stack Developer I write a lot of Transact SQL and sometimes I get into the habit of writing regular queries, and if it becomes more complex I might write an .ASP page that has queries within queries (which I hate to do) but sometimes it's a quick report and you're just wanting to get it done.

But today, for whatever reason I was like, why don't you try using a SQL View.  A SQL View is a virtual table based on the result-set of a SQL statement.  I've written Views here and there in the past but sometimes I just forget how useful they can be.

So when looking at my scenarios for this report, I was trying to get my creative juices flowing.  How can I make this query simple and efficient?  How can I limit my code to get this particular task completed?  How can I compare the value in one table to values in another that had some business logic behind it (that being the View).

I was pretty happy with the end result as it only took me about one hour to complete and it runs fast!  Here's my final result:

SELECT s.ItemNum AS ItemNum , s.QtyOnHand - isnull(v.InProcessQty,0) AS TotalQtyOnHand
FROM Table1 s
INNER JOIN Table2 i ON s.ItemNum = i.ItemNum
LEFT OUTER JOIN vw_Script v ON i.ItemNum = v.PartNo
WHERE i.QtyONhand > 0 and BinLocationCnt = 0
GROUP by s.ItemNum, s.QtyOnHand - isnull(v.InProcessQty,0) 
HAVING s.QtyOnHand - isnull(v.InProcessQty,0) > 0
ORDER BY s.itemNum

View script:
SELECT     ISNULL(SUM(d.Qty), 0) AS InProcessQty, d.PartNo
FROM         Table3 d INNER JOIN
                      Table4 s ON d.SkidNo = s.SkidNo
WHERE     (s.SkidStatus <> 'Shipped') AND (s.Deleted = 0) OR
                      (s.SkidStatus IS NULL) AND (s.Deleted = 0)


Popular posts from this blog

2018 Goals Update

Wow, the month of January 2018 has flown by!  I cannot believe it's Feb 1 already!  But I will say I've been pretty happy with the progress of keeping my goals for the 2018 year!

Here's what I've kept to thus far:

1. Recite the Optimist Creed every morning (well at least during work days)

2. No more Mountain Dew in the morning

3. I've learned PHP and in the progress of learning C# and (progress is good!)

4.  I'm almost finished reading Soft Skills by John Sonmez (trying to read 1 book per Quarter)

5. Family vacation to Disney has been booked!

6. Blog has been started!

Book Review: The New Psycho-Cybernetics

The book The New Psycho-Cybernetics by Dr. Maxwell Maltz is truly an amazing book!  This book should be read by everyone!  Whether your self-image is good or bad this book talks about taking steps to improve your self-image, live a longer life, and ultimately be happy!

I myself feel like I have a good self-image, my self-esteem is high and overall I'm an optimistic and happy person.  But I can see how a book like this can help me strive for higher achievements and help me to reach those higher goals!

For those with poor self-images and low esteem this book will benefit you immensely.  The book talks about several examples where people have been down, sick, lonely.  But have gone through the exercises in the book and come out with a much better self-image and becoming much more happy.

There are so many examples in the book its hard to cover them all and that's why I will definitely be reading the book again, as well as a reference for future inspirations.  Towards the end of th…

Ways To Avoid Developer's Burnout

Last night I read an article by Adris Azeez called Avoiding Burnout as as Software Developer and it got me thinking about the steps I take to avoid burnout, boredom, etc.

Several of the ideas Adris talks about are very similar to what I already do, but the main point is to change things up, take a break when needed, and if you're not in "coding" mode do something else that's productive.
As a developer for over 20 years I can honestly say there are days where the "ideas" and "code" just doesn't flow.  So here are a few things I do to still be productive at work when I'm developing:
1) Work on a "fun" project: sometimes when you work on the same project for several days/weeks, the brain needs a break.  I find that if I focus on something new it refreshes my mind and the creative juices start flowing again.  For example, I store several "fun" projects in my head to develop in the future.  Recently, I developed a new March …