Click here to monitor SSC
SQLServerCentral is supported by Red Gate Software Ltd.
 
Log in  ::  Register  ::  Not logged in
 
 
 
        
Home       Members    Calendar    Who's On


Add to briefcase «««1234»»

display order by like 1,2,3,4,5...............plz write quarie Expand / Collapse
Author
Message
Posted Tuesday, November 5, 2013 1:43 AM


SSC-Forever

SSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-Forever

Group: General Forum Members
Last Login: Yesterday @ 1:14 PM
Points: 40,615, Visits: 37,081
Jeff Moden (11/5/2013)
I'm well aware of that. You and I have had this conversation before and I absolutely agree. I should have said "and that someone is wrong because making good choices as to data type is NOT a pre-optimization."


Yup. Just putting it out there for those who read this and don't know.

I think I need to write something on this topic...



Gail Shaw
Microsoft Certified Master: SQL Server 2008, MVP
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

We walk in the dark places no others will enter
We stand on the bridge and no one may pass

Post #1511396
Posted Tuesday, November 5, 2013 2:03 AM


Hall of Fame

Hall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of Fame

Group: General Forum Members
Last Login: Today @ 11:50 PM
Points: 3,440, Visits: 5,397
Jeff Moden (11/5/2013)
dwain.c (11/5/2013)
Jeff Moden (11/5/2013)
dwain.c (11/5/2013)
For what it's worth, I'm in favor of a selective culling of the gene pool.


I assure you, it's just words from some serious pent up frustration from working with some folks that don't get it. Rest assurred that I take the high road and try to educate them. I'm not always successful but I do try.


And if you fail, that's when you break out the high-velocity pork chops I presume.


Nope. In such a case, that would simply be another failure on my part. I've found that the people I'm successful with want to learn. My real failure is sometimes failing to recognize those that don't actually want to learn.


You sir, have the patience of Job, the generosity of Mother Theresa and the wisdom of Yoda.

If all the world were composed of individuals with such grace, it would surely be a better place.

Me, I'm just a grumpy old man!



My mantra: No loops! No CURSORs! No RBAR! Hoo-uh!

My thought question: Have you ever been told that your query runs too fast?

My advice:
INDEXing a poor-performing query is like putting sugar on cat food. Yeah, it probably tastes better but are you sure you want to eat it?
The path of least resistance can be a slippery slope. Take care that fixing your fixes of fixes doesn't snowball and end up costing you more than fixing the root cause would have in the first place.


Need to UNPIVOT? Why not CROSS APPLY VALUES instead?
Since random numbers are too important to be left to chance, let's generate some!
Learn to understand recursive CTEs by example.
Splitting strings based on patterns can be fast!
Post #1511397
Posted Wednesday, November 6, 2013 1:05 PM


SSC-Dedicated

SSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-Dedicated

Group: General Forum Members
Last Login: Today @ 2:11 PM
Points: 35,772, Visits: 32,441
GilaMonster (11/5/2013)
Jeff Moden (11/5/2013)
I'm well aware of that. You and I have had this conversation before and I absolutely agree. I should have said "and that someone is wrong because making good choices as to data type is NOT a pre-optimization."


Yup. Just putting it out there for those who read this and don't know.

I think I need to write something on this topic...


Thanks, Gail. It would be a real pleasure to proof read it for you, if you'd like. I saw a part of something that you did on the "Preoptimization is the root of all evil" thing and it was absolutely awesome.

I'll also try to remember to add the missing part on the next post that comes up on this subject. I'd left out a really important part on this one until you reminded me.


--Jeff Moden
"RBAR is pronounced "ree-bar" and is a "Modenism" for "Row-By-Agonizing-Row".

First step towards the paradigm shift of writing Set Based code:
Stop thinking about what you want to do to a row... think, instead, of what you want to do to a column."

(play on words) "Just because you CAN do something in T-SQL, doesn't mean you SHOULDN'T." --22 Aug 2013

Helpful Links:
How to post code problems
How to post performance problems
Post #1511988
Posted Wednesday, November 6, 2013 5:37 PM


Hall of Fame

Hall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of Fame

Group: General Forum Members
Last Login: Today @ 11:50 PM
Points: 3,440, Visits: 5,397
Jeff Moden (11/6/2013)
GilaMonster (11/5/2013)
Jeff Moden (11/5/2013)
I'm well aware of that. You and I have had this conversation before and I absolutely agree. I should have said "and that someone is wrong because making good choices as to data type is NOT a pre-optimization."


Yup. Just putting it out there for those who read this and don't know.

I think I need to write something on this topic...


Thanks, Gail. It would be a real pleasure to proof read it for you, if you'd like. I saw a part of something that you did on the "Preoptimization is the root of all evil" thing and it was absolutely awesome.

I'll also try to remember to add the missing part on the next post that comes up on this subject. I'd left out a really important part on this one until you reminded me.


At the risk of showing my ignorance (again), I had never heard of this Knuth quote "Preoptimization is the root of all evil" so I Googled it. I found a Wiki page that listed it with some links to the original source but they seemed to be all dead. I'd like to read about what Knuth actually said in context. You know how quotes can sometimes be misconstrued when out of context.

Do you know of any links that work where he is describing it?



My mantra: No loops! No CURSORs! No RBAR! Hoo-uh!

My thought question: Have you ever been told that your query runs too fast?

My advice:
INDEXing a poor-performing query is like putting sugar on cat food. Yeah, it probably tastes better but are you sure you want to eat it?
The path of least resistance can be a slippery slope. Take care that fixing your fixes of fixes doesn't snowball and end up costing you more than fixing the root cause would have in the first place.


Need to UNPIVOT? Why not CROSS APPLY VALUES instead?
Since random numbers are too important to be left to chance, let's generate some!
Learn to understand recursive CTEs by example.
Splitting strings based on patterns can be fast!
Post #1512044
Posted Wednesday, November 6, 2013 8:02 PM


SSC-Dedicated

SSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-Dedicated

Group: General Forum Members
Last Login: Today @ 2:11 PM
Points: 35,772, Visits: 32,441
dwain.c (11/6/2013)
Jeff Moden (11/6/2013)
GilaMonster (11/5/2013)
Jeff Moden (11/5/2013)
I'm well aware of that. You and I have had this conversation before and I absolutely agree. I should have said "and that someone is wrong because making good choices as to data type is NOT a pre-optimization."


Yup. Just putting it out there for those who read this and don't know.

I think I need to write something on this topic...


Thanks, Gail. It would be a real pleasure to proof read it for you, if you'd like. I saw a part of something that you did on the "Preoptimization is the root of all evil" thing and it was absolutely awesome.

I'll also try to remember to add the missing part on the next post that comes up on this subject. I'd left out a really important part on this one until you reminded me.


At the risk of showing my ignorance (again), I had never heard of this Knuth quote "Preoptimization is the root of all evil" so I Googled it. I found a Wiki page that listed it with some links to the original source but they seemed to be all dead. I'd like to read about what Knuth actually said in context. You know how quotes can sometimes be misconstrued when out of context.

Do you know of any links that work where he is describing it?


Indeed I do...
http://sbel.wisc.edu/Courses/ME964/Literature/knuthProgramming1974.pdf

Once you have that PDF loaded, just search for the word "evil" and it will take you to the quote on page 8 of the PDF (originally numbered page "268" in the original book). And, indeed, many have taken what the man has said totally out of context. Many have, in my humble opinion, warped the word "premature" to suit their own needs as they have also done with the word "optimization".

But I'll let you draw your own conclusions from the article at the URL above.


--Jeff Moden
"RBAR is pronounced "ree-bar" and is a "Modenism" for "Row-By-Agonizing-Row".

First step towards the paradigm shift of writing Set Based code:
Stop thinking about what you want to do to a row... think, instead, of what you want to do to a column."

(play on words) "Just because you CAN do something in T-SQL, doesn't mean you SHOULDN'T." --22 Aug 2013

Helpful Links:
How to post code problems
How to post performance problems
Post #1512065
Posted Wednesday, November 6, 2013 8:09 PM


Hall of Fame

Hall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of Fame

Group: General Forum Members
Last Login: Today @ 11:50 PM
Points: 3,440, Visits: 5,397
Jeff Moden (11/6/2013)
dwain.c (11/6/2013)
Jeff Moden (11/6/2013)
GilaMonster (11/5/2013)
Jeff Moden (11/5/2013)
I'm well aware of that. You and I have had this conversation before and I absolutely agree. I should have said "and that someone is wrong because making good choices as to data type is NOT a pre-optimization."


Yup. Just putting it out there for those who read this and don't know.

I think I need to write something on this topic...


Thanks, Gail. It would be a real pleasure to proof read it for you, if you'd like. I saw a part of something that you did on the "Preoptimization is the root of all evil" thing and it was absolutely awesome.

I'll also try to remember to add the missing part on the next post that comes up on this subject. I'd left out a really important part on this one until you reminded me.


At the risk of showing my ignorance (again), I had never heard of this Knuth quote "Preoptimization is the root of all evil" so I Googled it. I found a Wiki page that listed it with some links to the original source but they seemed to be all dead. I'd like to read about what Knuth actually said in context. You know how quotes can sometimes be misconstrued when out of context.

Do you know of any links that work where he is describing it?


Indeed I do...
http://sbel.wisc.edu/Courses/ME964/Literature/knuthProgramming1974.pdf

Once you have that PDF loaded, just search for the word "evil" and it will take you to the quote on page 8 of the PDF (originally numbered page "268" in the original book). And, indeed, many have taken what the man has said totally out of context. Many have, in my humble opinion, warped the word "premature" to suit their own needs as they have also done with the word "optimization".

But I'll let you draw your own conclusions from the article at the URL above.


Thank you sir! Downloading that now. Structured programming with loops? Heresy! Or so I was taught. Should be an interesting read.



My mantra: No loops! No CURSORs! No RBAR! Hoo-uh!

My thought question: Have you ever been told that your query runs too fast?

My advice:
INDEXing a poor-performing query is like putting sugar on cat food. Yeah, it probably tastes better but are you sure you want to eat it?
The path of least resistance can be a slippery slope. Take care that fixing your fixes of fixes doesn't snowball and end up costing you more than fixing the root cause would have in the first place.


Need to UNPIVOT? Why not CROSS APPLY VALUES instead?
Since random numbers are too important to be left to chance, let's generate some!
Learn to understand recursive CTEs by example.
Splitting strings based on patterns can be fast!
Post #1512066
Posted Wednesday, November 6, 2013 8:28 PM


SSC-Dedicated

SSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-Dedicated

Group: General Forum Members
Last Login: Today @ 2:11 PM
Points: 35,772, Visits: 32,441
I almost forgot. I misquoted the man probably because I've heard it misquoted by others so often. The actual quote should commence with "premature optimization" rather than "pre-optimization".

--Jeff Moden
"RBAR is pronounced "ree-bar" and is a "Modenism" for "Row-By-Agonizing-Row".

First step towards the paradigm shift of writing Set Based code:
Stop thinking about what you want to do to a row... think, instead, of what you want to do to a column."

(play on words) "Just because you CAN do something in T-SQL, doesn't mean you SHOULDN'T." --22 Aug 2013

Helpful Links:
How to post code problems
How to post performance problems
Post #1512068
Posted Wednesday, November 6, 2013 8:34 PM


Hall of Fame

Hall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of Fame

Group: General Forum Members
Last Login: Today @ 11:50 PM
Points: 3,440, Visits: 5,397
Based on cursory review of the information surrounding the quote, I'm in a position of "initial reluctance to agree."

I'm thinking that part of that 97% he talks about should be addressed if it can be done without significant overhead to getting the code written and tested.

Need to take a deep dive to see if my initial position holds fast.

Then again, who am I to disagree with the distinguished Dr. Knuth!



My mantra: No loops! No CURSORs! No RBAR! Hoo-uh!

My thought question: Have you ever been told that your query runs too fast?

My advice:
INDEXing a poor-performing query is like putting sugar on cat food. Yeah, it probably tastes better but are you sure you want to eat it?
The path of least resistance can be a slippery slope. Take care that fixing your fixes of fixes doesn't snowball and end up costing you more than fixing the root cause would have in the first place.


Need to UNPIVOT? Why not CROSS APPLY VALUES instead?
Since random numbers are too important to be left to chance, let's generate some!
Learn to understand recursive CTEs by example.
Splitting strings based on patterns can be fast!
Post #1512069
Posted Wednesday, November 6, 2013 8:37 PM


SSC-Dedicated

SSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-DedicatedSSC-Dedicated

Group: General Forum Members
Last Login: Today @ 2:11 PM
Points: 35,772, Visits: 32,441
dwain.c (11/5/2013)
Jeff Moden (11/5/2013)
dwain.c (11/5/2013)
Jeff Moden (11/5/2013)
dwain.c (11/5/2013)
For what it's worth, I'm in favor of a selective culling of the gene pool.


I assure you, it's just words from some serious pent up frustration from working with some folks that don't get it. Rest assurred that I take the high road and try to educate them. I'm not always successful but I do try.


And if you fail, that's when you break out the high-velocity pork chops I presume.


Nope. In such a case, that would simply be another failure on my part. I've found that the people I'm successful with want to learn. My real failure is sometimes failing to recognize those that don't actually want to learn.


You sir, have the patience of Job, the generosity of Mother Theresa and the wisdom of Yoda.

If all the world were composed of individuals with such grace, it would surely be a better place.

Me, I'm just a grumpy old man!


While I'm honored that it seems that way, I have to confess that it's more inline with the selfish act of self-preservation and time available. I'd much rather take the time to teach someone that wants to learn than to try to teach the proverbial pig to fly. Because it was decades ago when I first heard it, I've forgotten the source but there's an old saying that still rings true today.

"A man forced against his will, is of the same opinion still."


--Jeff Moden
"RBAR is pronounced "ree-bar" and is a "Modenism" for "Row-By-Agonizing-Row".

First step towards the paradigm shift of writing Set Based code:
Stop thinking about what you want to do to a row... think, instead, of what you want to do to a column."

(play on words) "Just because you CAN do something in T-SQL, doesn't mean you SHOULDN'T." --22 Aug 2013

Helpful Links:
How to post code problems
How to post performance problems
Post #1512070
Posted Wednesday, November 6, 2013 8:45 PM


Hall of Fame

Hall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of FameHall of Fame

Group: General Forum Members
Last Login: Today @ 11:50 PM
Points: 3,440, Visits: 5,397
Jeff Moden (11/6/2013)
dwain.c (11/5/2013)
Jeff Moden (11/5/2013)
dwain.c (11/5/2013)
Jeff Moden (11/5/2013)
dwain.c (11/5/2013)
For what it's worth, I'm in favor of a selective culling of the gene pool.


I assure you, it's just words from some serious pent up frustration from working with some folks that don't get it. Rest assurred that I take the high road and try to educate them. I'm not always successful but I do try.


And if you fail, that's when you break out the high-velocity pork chops I presume.


Nope. In such a case, that would simply be another failure on my part. I've found that the people I'm successful with want to learn. My real failure is sometimes failing to recognize those that don't actually want to learn.


You sir, have the patience of Job, the generosity of Mother Theresa and the wisdom of Yoda.

If all the world were composed of individuals with such grace, it would surely be a better place.

Me, I'm just a grumpy old man!


While I'm honored that it seems that way, I have to confess that it's more inline with the selfish act of self-preservation and time available. I'd much rather take the time to teach someone that wants to learn than to try to teach the proverbial pig to fly. Because it was decades ago when I first heard it, I've forgotten the source but there's an old saying that still rings true today.

"A man forced against his will, is of the same opinion still."


Isn't the proverbial high-velocity pork chop, merely a pig flying in disguise?

But we digress.

I've heard that quote too and agree with it.



My mantra: No loops! No CURSORs! No RBAR! Hoo-uh!

My thought question: Have you ever been told that your query runs too fast?

My advice:
INDEXing a poor-performing query is like putting sugar on cat food. Yeah, it probably tastes better but are you sure you want to eat it?
The path of least resistance can be a slippery slope. Take care that fixing your fixes of fixes doesn't snowball and end up costing you more than fixing the root cause would have in the first place.


Need to UNPIVOT? Why not CROSS APPLY VALUES instead?
Since random numbers are too important to be left to chance, let's generate some!
Learn to understand recursive CTEs by example.
Splitting strings based on patterns can be fast!
Post #1512071
« Prev Topic | Next Topic »

Add to briefcase «««1234»»

Permissions Expand / Collapse