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 12345»»»

Core T-SQL Expand / Collapse
Author
Message
Posted Thursday, November 21, 2013 8:37 PM


SSC-Dedicated

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

Group: Administrators
Last Login: Yesterday @ 8:53 PM
Points: 33,204, Visits: 15,353
Comments posted to this topic are about the item Core T-SQL






Follow me on Twitter: @way0utwest

Forum Etiquette: How to post data/code on a forum to get the best help
Post #1516633
Posted Friday, November 22, 2013 2:02 AM


Old Hand

Old HandOld HandOld HandOld HandOld HandOld HandOld HandOld Hand

Group: General Forum Members
Last Login: Today @ 3:17 AM
Points: 373, Visits: 663
I've been working with SQL Server for 7 years and have still not once had to use APPLY for anything... Do I not meet the minimum requirements to work with SQL Server? :D

I've always found 'minimum' skills to be a difficult thing to really define. If someone can write a complex yet efficient set of ctes but has so rarely used 'left outer join' that he has to read the bol every time he uses it, he shouldn't be marked down for not knowing outer joins inside and out, left and right... - he clearly has the capacity to understand data so if he is thrown into an environment where he has to do a lot more outer joins you can bet he'll become an expert pretty darn quick.



Ben

^ Thats me!


----------------------------------------
01010111011010000110000101110100 01100001 0110001101101111011011010111000001101100011001010111010001100101 01110100011010010110110101100101 011101110110000101110011011101000110010101110010
----------------------------------------
Post #1516684
Posted Friday, November 22, 2013 2:35 AM


SSChasing Mays

SSChasing MaysSSChasing MaysSSChasing MaysSSChasing MaysSSChasing MaysSSChasing MaysSSChasing MaysSSChasing Mays

Group: General Forum Members
Last Login: Wednesday, August 20, 2014 7:46 AM
Points: 627, Visits: 238
I have found these things very interesting and wonder if I have 'enough' understanding of a subject to consider myself as having the basic skills. As mentioned, I do not use certain areas of T-SQL on a daily basis and have to look them up. But I do know when to use them and that they are available, I know what they are used for etc. My definition of core skills is largely depending on the 'grasp' of the subject.
Just my thoughts on this...
(Sorry, this does not add to your list, but might create some questions and answers)
Post #1516690
Posted Friday, November 22, 2013 2:57 AM
Valued Member

Valued MemberValued MemberValued MemberValued MemberValued MemberValued MemberValued MemberValued Member

Group: General Forum Members
Last Login: Thursday, May 8, 2014 5:11 AM
Points: 71, Visits: 35,733
Know how google/bing/duckduckgo to find examples on how to code those problems and then apply those to their problem.

A little explaining:

15-20 years ago I was asked by someone on how to code to convert a decimal to hex (not in TSQL) and I was surprised he didn't know it. So I investigated a little and the best answer I got was:"I have to think about it". I considered it shocking that no one said me : give me 5 minutes (which I considered already a long time) and I give you the solution.

In those years, I think everything changed. I think it is more important to be able to find solutions on the internet (few had internet 15 years ago) that you can apply to your specific problem than to know directly how to code it.

I do agree that to be considered a TSQL expert (I do NOT consider myself a TSQL expert even if I am able to write complex TSQL selects that perform quite well), you should be able to write with ease a lot of those core TSQL.
Post #1516696
Posted Friday, November 22, 2013 3:12 AM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Thursday, August 21, 2014 5:08 AM
Points: 7, Visits: 40
From my 5 years experience, what I have realised is that it's not necessarily about whether they know the language in use, in this case T-SQL, but whether they know the theory behind relational databases. Just like someone could know Java very well doesn't necessarily mean that they know and apply the correct concept of OO programming. Similarly I think a big part of SQL is to have an understanding of the relational data model and then any SQL language/tool, which could be T-SQL, PostgreSQL, MySQL etc , can be used to apply that theory. But you are right, there needs to be some way of grading from which you can tell what level someone is at, novice, intermediate or expert. In my view a novice should be able to
*Perform basic querying such as select, insert, update and delete on single tables.
*Create tables (with PKs and FKs), views and procedures.

Taqveem
Post #1516701
Posted Friday, November 22, 2013 3:27 AM
Ten Centuries

Ten CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen CenturiesTen Centuries

Group: General Forum Members
Last Login: Wednesday, July 9, 2014 2:52 AM
Points: 1,153, Visits: 1,047
I'd include the ability to handle the possible effects of NULL values, and knowledge of how and why to use Stored Procedures.

I'm another person who hasn't ever needed to use APPLY for any actual work.
Post #1516706
Posted Friday, November 22, 2013 3:29 AM


SSCertifiable

SSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiable

Group: General Forum Members
Last Login: Today @ 8:37 AM
Points: 5,343, Visits: 3,045
taqveem45 (11/22/2013)
From my 5 years experience, what I have realised is that it's not necessarily about whether they know the language in use, in this case T-SQL, but whether they know the theory behind relational databases. Just like someone could know Java very well doesn't necessarily mean that they know and apply the correct concept of OO programming. Similarly I think a big part of SQL is to have an understanding of the relational data model and then any SQL language/tool, which could be T-SQL, PostgreSQL, MySQL etc , can be used to apply that theory. But you are right, there needs to be some way of grading from which you can tell what level someone is at, novice, intermediate or expert. In my view a novice should be able to
*Perform basic querying such as select, insert, update and delete on single tables.
*Create tables (with PKs and FKs), views and procedures.

Taqveem


Totally agree.

Many people do not understand the order that the rowsets are processed in (I can't remember the right terminology) for a SELECT statement yet the ordering is essential as you can cut down the amount of work that is required.

Also understanding that SQL is a declarative language means that you are just telling your RDBMS what you want the result to comply to not how it will produce it.

These sort of things are fundamentals. Many of the concepts are simple and easy to grasp yet offer a lot of power to those that learn them. It is not dry academic information but powerful, employable knowledge.


Gaz

-- Stop your grinnin' and drop your linen...they're everywhere!!!
Post #1516708
Posted Friday, November 22, 2013 3:36 AM


SSCertifiable

SSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiable

Group: General Forum Members
Last Login: Today @ 8:37 AM
Points: 5,343, Visits: 3,045
I would add:

° How to apply updates to single rows, all rows or multiple chosen rows (UPDATE statement).
° How to delete single rows, all rows or multiple chosen rows (DELETE statement).
° How to return data in a specific ordering; both rows and columns (ORDER BY clause and SELECT statement).

I totally agree that once you know how and when to apply a technique it can be appropriate to need to check the "how" dependent on ones role.


Gaz

-- Stop your grinnin' and drop your linen...they're everywhere!!!
Post #1516709
Posted Friday, November 22, 2013 4:19 AM
Forum Newbie

Forum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum NewbieForum Newbie

Group: General Forum Members
Last Login: Wednesday, July 9, 2014 5:04 AM
Points: 1, Visits: 103
Basic concepts of database performance tuning should be a must for a competent database developer.
A specific task to accomplish in this respect would be to understand the query's estimated execution plan.
Post #1516718
Posted Friday, November 22, 2013 4:22 AM
SSC Journeyman

SSC JourneymanSSC JourneymanSSC JourneymanSSC JourneymanSSC JourneymanSSC JourneymanSSC JourneymanSSC Journeyman

Group: General Forum Members
Last Login: Wednesday, July 9, 2014 7:43 AM
Points: 83, Visits: 259
For me core tSQL are joins & nesting, understanding where clauses, the DML statements, the use of views and stored procedures, grouping as well as knowing how nulls work and are handled. Some constructs like CTEs, pivot and windowing functions are nice to have and make life easier. Later on comes database design, the importance of datatypes, constraints and referential integrity.
What is more important for me is being able to handle complexity and being able to think in sets. If given a complex query that is running slowly, they can rewrite it so that it runs more quickly or with much less overhead. When given a complex task, they can break it down into its logical constituent parts.
Post #1516719
« Prev Topic | Next Topic »

Add to briefcase 12345»»»

Permissions Expand / Collapse