PostgreSQL: En utilisant des clauses NULL et Not NULL

Les valeurs inconnues de la table de base de données sont traitées différemment par SQL. Lorsqu’un ou plusieurs champs d’une table doivent être vides, le mot clé NULL est utilisé au moment de la création de la table et la valeur NULL peut être utilisée pour sélectionner, insérer ou mettre à jour les données de la table. La valeur NULL n’indique pas la valeur zéro ou vide. Il est principalement utilisé pour ce champ où la valeur est manquante ou inconnue ou aucune valeur n’est applicable. Mais si un champ d’une table doit être défini comme obligatoire, vous devez utiliser le mot clé NOT NULL au moment de la création de la table. Ce tutoriel montre comment utiliser les clauses NULL et NOT NULL dans PostgreSQL pour exécuter les instructions SQL select, insert, update et delete.

Créer une table en utilisant NULL et NON NULL

CRÉER UNE TABLE company
(company_id int NOT NULL PRIMARY KEY,
nom varchar(40) NOT NULL,
adresse varchar(150),
phone char(20),
country varchar(50),
website_url varchar (50) NULL);

CRÉER des éléments DE TABLE
(item_id SERIAL,
name varchar(40) DEFAULT(‘Not Assign’),
quantity INT NULL,
company_id INT,
PRIMARY KEY(item_id),
FOREIGN KEY(company_id) RÉFÉRENCES company(company_id) );

Insérer des données dans les tableaux :

Insérer dans le tableau de l’entreprise:

INSÉREZ DANS company(company_id, nom, adresse, téléphone, pays, website_url)
VALEURS (1, ‘Samsung’, ‘123….’, ‘+337277888’, ‘Corée’,’www.samsung.com « );
INSÉRER DANS la société (company_id, nom, adresse, téléphone, pays, website_url)
VALEURS (2, ‘Symphony’, ’67/A….’, ‘+42343567’, ‘Chaina’,’www.symphony.com ‘);
INSÉRER DANS la société (company_id, nom, adresse, téléphone, pays)
VALEURS (3, ‘LG’, ’45/B…. » , « ,  » Japon’);

Insérer dans le tableau des éléments:

INSÉRER DANS les éléments (nom, quantité, id_entreprise)
VALEURS (‘LG 122’, 4000,3);
INSÉRER DANS LES éléments (nom, quantité, id_entreprise)
VALEURS (‘Samsung 460’, 7000, 1);
INSÉRER DANS les éléments (nom, quantité, company_id)
VALEURS (‘Symphony E80’, 2200,2 );

Exemple-1 : En utilisant NULL et NOT NULL dans SELECT Query

a) NULL

La requête suivante récupérera toutes les données de nom et d’adresse de la table de l’entreprise où la valeur website_url est nulle. Il n’y a qu’un seul enregistrement où la valeur website_url est NULLE.

SÉLECTIONNEZ le nom, l’adresse
DE la société
OÙ website_url est NULL;

b) NOT NULL

La sortie de NOT NULL est opposée à NULL. La requête select suivante renverra tous les enregistrements de la table company où le champ website_url contient des données.

SÉLECTIONNEZ le nom, le téléphone
DE la société
OÙ website_url n’est PAS NULL;

Exemple-2 : En utilisant NULL ou NOT NULL dans la requête INSERT

La requête suivante insérera la valeur company_id de la table company dans la table items qui n’a pas de valeur website_url. Il y a un enregistrement dans company où website_url est NULL. Ainsi, un enregistrement sera inséré après l’exécution de la requête.

Insérer dans les éléments
(company_id)
SÉLECTIONNER company_id
DE la société
OÙ website_url est NULL;

Exemple -3: Utilisation de NULL dans la requête de MISE À jour

champ nom la valeur de la table des éléments sera mise à jour quel enregistrement contient NULL dans le champ quantité. Selon les données, un enregistrement sera mis à jour après l’exécution de la requête.

METTRE À JOUR les éléments
SET name=’Nouvelle valeur’
OÙ quantité NULL;

Exemple -4 : En utilisant NULL ou NOT NULL dans la requête de MISE À JOUR

La requête suivante supprimera les enregistrements de la table des éléments où la valeur de quantité est NULLE. Il n’y a qu’un seul enregistrement dans la table des éléments où la valeur de la quantité est NULLE. Ainsi, un enregistrement sera supprimé après l’exécution de la requête.

SUPPRIMER des éléments
OÙ la quantité est NULLE;

Vous pouvez appliquer des clauses NULL et NOT NULL avec la clause WHERE pour exécuter toute requête basée sur la table si la table contient une valeur NULL. Mais la valeur NULL et la chaîne vide ne sont pas identiques. Si vous créez un champ de la table sans option NULL et conservez des données vides dans ce champ, la clause NULL ne fonctionnera pas pour ce champ. Vous pouvez appliquer la clause NULL pour n’importe quelle table en fonction de la structure de la table.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.