Ich verwende die neuesten MySQL.Wie UPDATE mit einem SELECT in MySQL zu verwenden
Ich habe zwei Tabellen: backlinks
und pages
.
Ich versuche, eine Spalte namens cache_links
in der Tabelle pages
für eine bestimmte URL zu aktualisieren. Die Spalte sollte der Anzahl der Zeilen in backlinks
entsprechen, wobei destination
= url
.
Ich konnte tun dies in meiner Anwendung Sprache wie so, falls was ich meine ist, zu tun, ist nicht klar:
$myURL = "http://google.com/";
$numLinksResult = mysqli_query($c, "SELECT count(*) AS `num` FROM `backlinks` WHERE `same_domain` = FALSE AND `url` = '$myURL'");
$numLinksRow = mysqli_fetch_assoc($numLinksResult);
$numLinks = $numLinksRow['num'];
mysqli_query($c, "UPDATE `pages` SET `links` = $numLinks WHERE `url` = '$myURL'");
Die Abfrage Ich habe zur Zeit zu bauen versucht, sieht wie folgt aus:
Das Problem, denke ich, ist bei backlinks.count(*)
. Ich habe keine Ahnung, was ich falsch mache. Der Fehler, den ich bekomme ist:
#1064 - You have an error in your SQL syntax; check the manual that corresponds
to your MySQL server version for the right syntax to use near '*)
WHERE backlinks.`destination` = pages.`url` AND backlinks.`same_' at line 1
Jede Hilfe wird sehr geschätzt. Danke vielmals!
Arbeitete wie ein Charme. Ich liebe dich - vielen Dank! Ich werde Ihre Antwort in ~ 7 Minuten akzeptieren, wenn ich kann. –
Sie haben das in 2 Minuten beantwortet! Das muss eine Art Geschwindigkeitsrekord sein. +1! –