Aus zwei Tabellen in einer Abfrage löschen
P粉401901266
P粉401901266 2023-08-27 13:45:48
0
2
452
<p>Ich habe zwei Tabellen in MySQL</p> <pre class="brush:php;toolbar:false;">#messages Tabelle: Nachrichten ID Nachrichtentitel . . #usersmessages-Tabelle Benutzernachrichten-ID Nachrichten ID Benutzer-ID . .</pre> <p>Wenn ich jetzt aus der Nachrichtentabelle löschen möchte, kann ich das tun. Aber wenn ich die Nachricht anhand der Nachrichten-ID lösche, ist der Datensatz immer noch in der Benutzernachricht vorhanden und ich muss ihn sofort aus beiden Tabellen löschen. </p> <p>Ich habe die folgende Abfrage verwendet: </p> <pre class="brush:php;toolbar:false;">LÖSCHEN AUS Nachrichten LINKS BEITRETEN von BenutzernNachrichten USING(messageid) WHERE messageid='1' ;</pre> <p>Dann teste ich</p> <pre class="brush:php;toolbar:false;">LÖSCHEN AUS Nachrichten, Benutzernachrichten WHERE messages.messageid =usermessages.messageid und messageid='1' ;</pre> <p>Aber diese beiden Abfragen haben diese Aufgabe nicht erfüllt. </p>
P粉401901266
P粉401901266

Antworte allen(2)
P粉164942791
DELETE a.*, b.* 
FROM messages a 
LEFT JOIN usersmessages b 
ON b.messageid = a.messageid 
WHERE a.messageid = 1

翻译:从表messages中删除,其中messageid = 1,如果表uersmessages有messageid =表messages的messageid,则删除该行用户消息表。

P粉595605759

不能用分号分隔它们吗?

Delete from messages where messageid = '1';
Delete from usersmessages where messageid = '1'

只需使用INNER JOIN,如下所示

DELETE messages , usersmessages  FROM messages  INNER JOIN usersmessages  
WHERE messages.messageid= usersmessages.messageid and messages.messageid = '1'
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!