SQL & Think n' Do Software

Does anyone know anything about the SQL Programming Language or the Think & Do Product? I am starting a new job, and was wondering if there were any pointers or specific advice you could give me about these things.
Thanks

SQL is a very powerful language with very specific uses; it’s for manipulating databases and has possibly the smallest command set of any programming language; in it’s simplest use, it can be used to select, delete or modify specific information from a table in a database.

A typical SQL statement would be:
SELECT (names of fields in a table)
FROM (name of table)
WHERE (any criteria or conditions relating to the values in the rows)
;

I’ve never heard of Think & Do though, is it a report generator?

Another thumbs up for SQL. It’s incredibly easy to learn. When I had to know it for a job, I went to http://www.sqlcourse.com/ and went through the tutorials and quizzes and had it down flat within an hour or so. Now the only time I need to look it up is when I do something tricky, like a JOIN or INSERT on multiple tables.

I’ve never heard of Think & Do either.

This is the website for my company. I’ll be working here for a co-op program through my college for the next 5 years.

http://www.thinkndo.com/product/

This is the current project were are working on, using MS Visio to help optimize assembly line produciton for companies. I’m going to be working with the SQL Blocks, and I just started. They gave me this big book to read, and I’m on Chapter 4. It’s about 800 pages. Anyway, I was wondering what kind of stuff SQL is capable of, and some other stuff I should know about it. I know about the basic commands, but that’s about it. Thanks

For me, the major conceptual leap from traditional programming to SQL was that SQL works on the entire data set (or rather whichever bits of it fit the criteria in the WHERE clause).

For example in most languages, you’d have to loop right through all the data - something like:
[li]Open a record[/li][li]Examine it[/li][li]If it meets the criteria, then do something to it[/li][li]If we’re not at the end of the file then move to the next record and repeat[/li]
Whereas SQL effectively allows you to say
Do this for every record that meets the criteria.

Agree with what’s been said so far.

SQL is all about sets - remember them from maths classes?

If you’re comfortable with concepts like…

The set of all cars
The subset of all cars which are sports cars
The subset of all cars which are convertibles
The subset of all cars which are sports cars AND convertibles

…and so on, you’ll do fine with SQL. If not, you might struggle!

Only because the SQL engine hides the loops from the user. That is, you use one command, say UPDATE, to initiate a loop without having to explicitly loop through each record. The SQL engine is still looping as evidenced by timing benchmarks on different queries.

This is no different than operations in other programming languages which contain implicit loops. For example, in many programming languages, when you first specify an array, the array will be initialized with a default value (e.g. zero for numerics, null for strings, …). The specifics depend on the language, but this is an analogous case of the language handling an implicit loop so you don’t have to explicitly code one to instantiate each element of the array.

This is a minor point, but you have to keep these implicit loops in mind when coding SQL in order to avoid really inefficient operations. Especially when you start doing things which involve loops within loops (like JOINs), you can produce extraordinarily slow code in a single statement.