Free for PREMIUM members
select distinct” is a rather dull animal with minimal decision making powers.
A good rule of thumb -- if you need a distinct list of values in a single column or two, DISTINCT is the way to go. But if your results "don't look right" or you see some duplicate rows and can't figure out why, do NOT just add DISTINCT to your SELECT to "fix it" !! Step back, look at your joins, and re-write your query properly. Even worse, I've seen people simply add DISTINCT to all their SELECT's right from the start, to preemptively "avoid duplicates". Not good. (Side note: If you are a DISTINCT abuser, try adding meaningful primary keys to your tables).
Create well-organized and polished visualizations of your virtual and backup environments when planning VMware vSphere, Microsoft Hyper-V or Veeam deployments. It helps you to gain better visibility and valuable business insights.
I hate DISTINCT, too, at least improperly used. My rule is to use it at the lowest possible level. Example:
"Which products did each customer buy?"
SELECT DISTINCT p.ProductName, c.CustomerName
FROM Customers c, Products p, Orders o
WHERE o.CustomerId = c.CustomerId AND o.ProductId = p.ProductId
FROM Orders o
JOIN Customers c ON c.CustomerId = x.CustomerId
JOIN Products p ON p.CustomerId = x.CustomerId
--Much Much Better:
, COUNT(*) AS num_of
FROM Orders o
INNER JOIN Customers c
ON c.CustomerId = x.CustomerId
INNER JOIN Products p
ON p.CustomerId = x.CustomerId
Open in new window
We value your feedback.
Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!