CRUD
Syntaxe : Création (C)
CTRL+C pour copier, CTRL+V pour coller
1
INSERT INTO [class :]<class> | [cluster :]<cluster> | [index :]<index> [(<fields>[,]*)]
2
VALUES (<exp>[,]*) | [SET <field> = <expression>] | [<sub-command>[,]*] | [CONTENT {<JSON>}] | [RETURN <exp>] | [FROM query]
3
4
/*Créer un vertex*/
5
CREATE VERTEX [<class>] [CLUSTER <cluster>] [SET <field> = <exp>[,]*]
6
7
/*Créer un edge */
8
CREATE EDGE <class> [CLUSTER <cluster>]
9
FROM <rid> | (<query>) TO <rid> | (<query>)
10
[SET <field> = <expression>[,]*] | CONTENT {<JSON>}
INSERT INTO [class :]<class> | [cluster :]<cluster> | [index :]<index> [(<fields>[,]*)] VALUES (<exp>[,]*) | [SET <field> = <expression>] | [<sub-command>[,]*] | [CONTENT {<JSON>}] | [RETURN <exp>] | [FROM query] /*Créer un vertex*/ CREATE VERTEX [<class>] [CLUSTER <cluster>] [SET <field> = <exp>[,]*] /*Créer un edge */ CREATE EDGE <class> [CLUSTER <cluster>] FROM <rid> | (<query>) TO <rid> | (<query>) [SET <field> = <expression>[,]*] | CONTENT {<JSON>}
Exemple : Exemple
CTRL+C pour copier, CTRL+V pour coller
1
/*Insérer deux enregistrements dans la classe Patient*/
2
INSERT INTO Patient (firstName, lastName) VALUES ('John', 'Doe'), ('Jane', 'Toto')
3
4
/*Insérer les données en utilisant SET*/
5
INSERT INTO Vehicule set brand = 'X', type= '4x4'
6
7
/*Insérer les données dans la classe Employee sous format JSON*/
8
INSERT INTO Employee CONTENT { "EmployeeId": 1520, "job": "JS Developer" }
9
10
/*Insérer les données dans le Cluster qui a l'ID 15*/
11
INSERT INTO CLUSTER:15 (name) VALUES ('John')
12
13
/*Insérer les données dans le cluster qui est identifié par UTCStudents en utilisant une sub-query*/
14
INSERT INTO CLUSTER:UTCStudents FROM (SELECT FROM Schools WHERE schoolName = 'UTC')
15
16
/* Create un vertex de type Person */
17
CREATE VERTEX Person SET firstName = 'John', lastName = 'Doe'
/*Insérer deux enregistrements dans la classe Patient*/ INSERT INTO Patient (firstName, lastName) VALUES ('John', 'Doe'), ('Jane', 'Toto') /*Insérer les données en utilisant SET*/ INSERT INTO Vehicule set brand = 'X', type= '4x4' /*Insérer les données dans la classe Employee sous format JSON*/ INSERT INTO Employee CONTENT { "EmployeeId": 1520, "job": "JS Developer" } /*Insérer les données dans le Cluster qui a l'ID 15*/ INSERT INTO CLUSTER:15 (name) VALUES ('John') /*Insérer les données dans le cluster qui est identifié par UTCStudents en utilisant une sub-query*/ INSERT INTO CLUSTER:UTCStudents FROM (SELECT FROM Schools WHERE schoolName = 'UTC') /* Create un vertex de type Person */ CREATE VERTEX Person SET firstName = 'John', lastName = 'Doe'
Syntaxe : Affichage (R)
CTRL+C pour copier, CTRL+V pour coller
1
SELECT [(<Fields>[,]*)] [FROM <Target>]
2
[WHERE <Conditions>*]
3
[GROUP BY <Fields>*]
4
[ORDER BY <Fields>* [ASC | DESC] *]
5
[SKIP <SkipRecords>]
6
[LIMIT <MaxRecords>]
SELECT [(<Fields>[,]*)] [FROM <Target>] [WHERE <Conditions>*] [GROUP BY <Fields>*] [ORDER BY <Fields>* [ASC | DESC] *] [SKIP <SkipRecords>] [LIMIT <MaxRecords>]
Exemple : Exemple
CTRL+C pour copier, CTRL+V pour coller
1
/* Afficher tous les records de la classe Pharmacy */
2
SELECT FROM Pharmacy;
3
4
/* Afficher les noms de villes qui commencent par B */
5
SELECT * FROM City where name LIKE 'B%'
6
7
/* Le même que la requete precedente */
8
SELECT * FROM City where name.left(1) = 'B'
9
/* Afficher tous les records de la classe Pharmacy */ SELECT FROM Pharmacy; /* Afficher les noms de villes qui commencent par B */ SELECT * FROM City where name LIKE 'B%' /* Le même que la requete precedente */ SELECT * FROM City where name.left(1) = 'B'
Syntaxe : Modification (U)
CTRL+C pour copier, CTRL+V pour coller
1
UPDATE <class> | cluster:<cluster> | <recordID>
2
[SET | INCREMENT | ADD | REMOVE | PUT <fieldName> = <fieldValue>[,]*]
3
[WHERE <Conditions>*]
4
[UPSERT]
5
[LIMIT <MaxRecords>]
UPDATE <class> | cluster:<cluster> | <recordID> [SET | INCREMENT | ADD | REMOVE | PUT <fieldName> = <fieldValue>[,]*] [WHERE <Conditions>*] [UPSERT] [LIMIT <MaxRecords>]
Exemple : Exemple
CTRL+C pour copier, CTRL+V pour coller
1
/* Modify le nom de toutes les villes qui ont le champs name égale à null et le remplacer par Compiegne */
2
UPDATE City SET name = 'Compiegne' WHERA name IS NULL
3
4
/* Supprimer l'attribut population de tous les enregistrements de la classe City */
5
UPDATE City REMOVE population
6
7
/* Incrémenter la note de deux points pour les 15 premiers étudiants */
8
UPDATE Student INCREMENT Mark = 2 LIMIT 15
9
10
/* Modifier tous les enregistements de la classe UV qui sont enseignées en Automne pour avoir le nom égale à AI07 et créer un nouveau enregistrement si ce dernier n'existe pas */
11
UPDATE Uv SET name = 'AI07' UPSERT WHERE semester = 'Automne'
/* Modify le nom de toutes les villes qui ont le champs name égale à null et le remplacer par Compiegne */ UPDATE City SET name = 'Compiegne' WHERA name IS NULL /* Supprimer l'attribut population de tous les enregistrements de la classe City */ UPDATE City REMOVE population /* Incrémenter la note de deux points pour les 15 premiers étudiants */ UPDATE Student INCREMENT Mark = 2 LIMIT 15 /* Modifier tous les enregistements de la classe UV qui sont enseignées en Automne pour avoir le nom égale à AI07 et créer un nouveau enregistrement si ce dernier n'existe pas */ UPDATE Uv SET name = 'AI07' UPSERT WHERE semester = 'Automne'
Syntaxe : Suppression (d)
CTRL+C pour copier, CTRL+V pour coller
1
DELETE FROM <class> | cluster:<cluster> | index:<index>
2
[WHERE <Conditions>*]
3
[LIMIT <MaxRecords>]
4
5
DELETE VERTEX <className> | <rid>
6
[WHERE <Conditions>*]
7
[LIMIT <MaxRecords>]
8
9
DELETE EDGE <rid> |
10
FROM <rid> | TO <rid> | [<class>]
11
[WHERE <Conditions>*]
12
[LIMIT <MaxRecords>]
DELETE FROM <class> | cluster:<cluster> | index:<index> [WHERE <Conditions>*] [LIMIT <MaxRecords>] DELETE VERTEX <className> | <rid> [WHERE <Conditions>*] [LIMIT <MaxRecords>] DELETE EDGE <rid> | FROM <rid> | TO <rid> | [<class>] [WHERE <Conditions>*] [LIMIT <MaxRecords>]
Exemple : Exemple
CTRL+C pour copier, CTRL+V pour coller
1
/* Supprimer tous les records qui ont un surname égale à Unkown */
2
DELETE FROM Profile WHERE surname.toLowerCase() = 'unknown'
3
4
/* Supprimer les 20 premières dates nulles depuis le cluster Ticket2014 */
5
DELETE FROM CLUSTER:Ticket2014 WHERE date IS NULL LIMIT 20;
6
7
/* Supprimer le vertex qui a le rid égale à 50:15 */
8
DELETE VERTEX #50:15
/* Supprimer tous les records qui ont un surname égale à Unkown */ DELETE FROM Profile WHERE surname.toLowerCase() = 'unknown' /* Supprimer les 20 premières dates nulles depuis le cluster Ticket2014 */ DELETE FROM CLUSTER:Ticket2014 WHERE date IS NULL LIMIT 20; /* Supprimer le vertex qui a le rid égale à 50:15 */ DELETE VERTEX #50:15