Chrono de champ en fonction d'identifiant de la table
1 réponse
Gilles
Bonjour,
J'ai une table de la structure suivante :
ID1
ID2
IDCHONO
Lors d'une nouvelle insertion j'ai les données de ID1 et ID2 et je voudrais
alimenter dynamiquement IDCHONO avec une expression.
Ex. :
INSERT INTO MATABLE VALUES (ID1,ID2, (SELECT COUNT(1)+1 FROM MATABLE WHERE
ID1=ID1 AND ID2=ID2))
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Fred BROUARD
Gilles a écrit :
Bonjour,
J'ai une table de la structure suivante : ID1 ID2 IDCHONO
Lors d'une nouvelle insertion j'ai les données de ID1 et ID2 et je voudrais alimenter dynamiquement IDCHONO avec une expression. Ex. : INSERT INTO MATABLE VALUES (ID1,ID2, (SELECT COUNT(1)+1 FROM MATABLE WHERE ID1=ID1 AND ID2=ID2))
INSERT INTO MATABLE SELECT ID1, ID2, COUNT(1)+1 FROM MATABLE WHERE ID1=ID1 AND ID2=ID2
Sans doute COUNT(*) d'ailleurs.
Mais c'est une très mauvaise idée de faire comme cela car vous allez avoir des performances de plus en plus mauvaise au fur et à mesure de la montée en charge, jusqu'à générer des verrous mortels.
Pour faire cela on utilise généralement une table de compteurs.
A +
Si vous aviez une idée :)
Merci d'avance
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation *********************** http://www.sqlspot.com *************************
Gilles a écrit :
Bonjour,
J'ai une table de la structure suivante :
ID1
ID2
IDCHONO
Lors d'une nouvelle insertion j'ai les données de ID1 et ID2 et je voudrais
alimenter dynamiquement IDCHONO avec une expression.
Ex. :
INSERT INTO MATABLE VALUES (ID1,ID2, (SELECT COUNT(1)+1 FROM MATABLE WHERE
ID1=ID1 AND ID2=ID2))
INSERT INTO MATABLE
SELECT ID1, ID2, COUNT(1)+1
FROM MATABLE
WHERE ID1=ID1
AND ID2=ID2
Sans doute COUNT(*) d'ailleurs.
Mais c'est une très mauvaise idée de faire comme cela car vous allez
avoir des performances de plus en plus mauvaise au fur et à mesure de la
montée en charge, jusqu'à générer des verrous mortels.
Pour faire cela on utilise généralement une table de compteurs.
A +
Si vous aviez une idée :)
Merci d'avance
--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
*********************** http://www.sqlspot.com *************************
J'ai une table de la structure suivante : ID1 ID2 IDCHONO
Lors d'une nouvelle insertion j'ai les données de ID1 et ID2 et je voudrais alimenter dynamiquement IDCHONO avec une expression. Ex. : INSERT INTO MATABLE VALUES (ID1,ID2, (SELECT COUNT(1)+1 FROM MATABLE WHERE ID1=ID1 AND ID2=ID2))
INSERT INTO MATABLE SELECT ID1, ID2, COUNT(1)+1 FROM MATABLE WHERE ID1=ID1 AND ID2=ID2
Sans doute COUNT(*) d'ailleurs.
Mais c'est une très mauvaise idée de faire comme cela car vous allez avoir des performances de plus en plus mauvaise au fur et à mesure de la montée en charge, jusqu'à générer des verrous mortels.
Pour faire cela on utilise généralement une table de compteurs.
A +
Si vous aviez une idée :)
Merci d'avance
-- Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com Audit, conseil, expertise, formation, modélisation, tuning, optimisation *********************** http://www.sqlspot.com *************************