J'ai une table qui permet d'insérer des enregistrements qui sont très similaires mais diffèrent par une seule valeur de colonne ou deux. Par exemple, les documents suivants sont dans le tableau:mettre à jour les enregistrements en double ou similaires dans la même table
ID TITLE URL COUNTRY
1494 Hollywood Reporter http://www.hollywoodreporter.com USA
1497 Hollywood Reporter via Drudge Report http://www.hollywoodreporter.com NULL
2158 Hollywood Reporter via http://www.hollywoodreporter.com NULL
Je voudrais mettre à jour la colonne de pays au cours des deux derniers enregistrements où l'URL est la même. Aussi je voudrais aussi savoir comment trier ma table par colonne url afin que tous les urls en double sont regroupés ou même si elles sont similaires que vous avez dans certains cas comme:
http://www.hollywoodreporter.com http://www.blog.hollywoodreporter.com
Merci à l'avance.
Essayé ce qui suit et cela a fonctionné, où les urls étaient les mêmes
UPDATE t1
SET t1.country = t2.country à partir de sources AS t1 sources t2 Inscrivez- SUR t1.url = t2.url O WH t1.url = t2.url;
juste à comprendre le reste. merci à tous
MISE À JOUR
j'ai pu modifier les enregistrements qui avaient urls correspondant, mais pour ceux qui sont similaires comme http://www.pantagraph.com http://pantagraph.com http://pantagraph.com/titles
n'ont pas été mis à jour. Lorsque vous utilisez le tri et sélectionnez Je peux afficher tous ces enregistrements, mais en essayant de les mettre à jour, cela ne fonctionne pas. J'ai même juste essayé cette version simple de:
select * from Sources s
where s.url like url
qui montre les enregistrements mais en mettant à jour il n'a pas fonctionné.
update Sources
set country = s.country
from Sources s
where s.url like url
Pour répondre à votre deuxième question, vous devez définir "similaire". Pour vous aider avec votre premier problème à l'avenir, normaliser votre base de données afin que vous n'ayez pas ce problème à l'avenir. Les règles de normalisation ne sont pas seulement un exercice académique - elles existent pour résoudre les problèmes du monde réel. –
sens similaire ils partagent la même racine URL ou domaine ... comme http://stackoverflow.com et http://stackoverflow.com/questions/ Merci pour le conseil ... la normalisation ... les bases ..let moi essayer la sous-requête – vbNewbie