Je travaille sur un graphe (pas si) grand ayant environ 380K arêtes. J'ai écrit un programme pour compter le nombre de 3-cliques dans le graphique. Un exemple rapide:Comptage de 3 cliques dans un graphique
List of edges:
A - B
B - C
C - A
C - D
List of cliques:
A - B - C
MySQL Structure de la table:
+-------+------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+------------+------+-----+---------+-------+
| v1 | bigint(20) | YES | MUL | NULL | |
| v2 | bigint(20) | YES | MUL | NULL | |
+-------+------------+------+-----+---------+-------+
A 3-clique est rien, mais un triangle dans un graphique. Actuellement, je le fais en utilisant PHP + MySQL. Comme prévu, ce n'est pas assez rapide. Y a-t-il un moyen de le faire en pur MySQL? (peut-être un moyen d'insérer tous les 3-cliques dans un tableau?)
@Farthinworth: Merci pour votre temps. Pour une raison quelconque, cela me donne un ensemble vide. Et je ne pense pas avoir la situation que vous avez décrite à la fin. Est-ce que ça vous dérange d'expliquer ça un peu plus? EDIT: Je l'ai juste essayé sur une petite table aussi. Je vais regarder dans la déclaration s'il y a quelque chose qui me manque. – Legend
Ajout en tant que nouveau commentaire car cela a fonctionné sur une table de test: SELECT T1.v1, T2.v1, T3.v2 DE cycletest1 T1, cycletest1 T2, cycletest1 T3 WHERE T1.v1
Legend
Merci pour la réparation et plus encore, merci beaucoup pour l'idée. Je pensais que mon approche PHP + MySQL prendrait des jours pour finir! :) – Legend