Stairway to Database Design Level 9: Normalization
In the final step of Database Design, Joe Celko gives a simple but effective explanation of the normalization process and why it is important.
2019-03-26 (first published: 2011-11-11)
15,638 reads
In the final step of Database Design, Joe Celko gives a simple but effective explanation of the normalization process and why it is important.
2019-03-26 (first published: 2011-11-11)
15,638 reads
As part of the LAMP stack, MySQL is incredibly important for providing a reliable and platform-agnostic database platform for web development. This level looks at the syntax of MySQL and how to best port SQL code to a MySQL environment.
2012-12-05
4,350 reads
Level 2 of this stairway explains how to convert data declaration language (DDL) statements and data manipulation language (DML) statements from Postgres to Microsoft SQL Server.
2012-11-14
4,866 reads
In the first level of his Stairway to SQL Dialects, Joe Celko looks at the origins of the SQL language and how the language has spawned the various different dialects in use today.
2012-10-31
5,998 reads
It is certainly possible to fake an Array in SQL, but there are only a few occasions when it would be the best design. Most often, the wish for an array in SQL is a sign of a forlorn struggle against poorly-normalised data. One of the worst sins against Codd is the repeating group, as Joe Celko explains.
2011-07-20
3,438 reads
It is dangerous to assume that your data is sound. SQL already has intrinsic ways to cope with missing, or unknown data in its comparison predicate operators, or Theta operators. Can SQL be more effective in the way it deals with data quality? Joe Celko describes how the SQL Standard could soon evolve to deal with data in ways that allow aggregation and windowing in cases where the data quality is less than perfect.
2011-04-01
6,632 reads
You can easily re-factor bad DML code, but if a database design is wrong, you can do little to rescue the problem, even with expert queries. So what constitutes 'wrong RDBMS design? What are these errors that continually crop up? How can you recognise them and fix them? Joe embarks on a new series of articles by identifying a series of bad practices based on the habit of 'splitting' that which shouldn't be split.
2010-09-08
2,767 reads
What can we use in SQL instead of E. F. Codd's T theta operators for best-fit? Joe Celko returns with another puzzle that isn't new, in fact it already features “Swedish”, “Croatian” and “Colombian” solutions in chapter 17 of Joe's 'SQL for Smarties' book. These were all written before CTEs or the new WINDOW functions. Is there now a better solution? Was there one even then? We leave it to the readers to provide the answer!
2010-01-25
1,698 reads
Joe Celko comes back with a puzzle that isn't new, but one where the answer he originally gave now seems archaic: It is a deceptively simple problem, but is it true that the new features of SQL have simplified the solution? We leave it to the readers to provide the answer!
2009-09-28
3,530 reads
Our first Stumper sees Joe Celko providing a conundrum with a prize for anyone who can come up with a better solution than he can.
2009-07-27
3,227 reads
By Brian Kelley
If you want to learn better, pause more in your learning to intentionally review.
By John
If you’ve used Azure SQL Managed Instance General Purpose, you know the drill: to...
By DataOnWheels
Ramblings of a retired data architect Let me start by saying that I have...
Hello team Can anyone share popular azure SQL DBA certification exam code? and your...
Comments posted to this topic are about the item Faster Data Engineering with Python...
Comments posted to this topic are about the item Which Result II
I have this code in SQL Server 2022:
CREATE SCHEMA etl;
GO
CREATE TABLE etl.product
(
ProductID INT,
ProductName VARCHAR(100)
);
GO
INSERT etl.product
VALUES
(2, 'Bee AI Wearable');
GO
CREATE TABLE dbo.product
(
ProductID INT,
ProductName VARCHAR(100)
);
GO
INSERT dbo.product
VALUES
(1, 'Spiral College-ruled Notebook');
GO
CREATE OR ALTER PROCEDURE etl.GettheProduct
AS
BEGIN
exec('SELECT ProductName FROM product;')
END;
GO
When I execute this code as a user whose default schema is dbo and has rights to the tables and proc, what is returned? See possible answers