簡體   English   中英

我如何插入到table1中,其中table2.column = value?

[英]How can i insert into Table1 where table2.column = value?

我有一個基本上像標題的問題,我嘗試過的查詢是:

INSERT INTO 
  pendingresults, 
  l1_afixtures (pendingresults.TeamAName, pendingresults.TeamA, 
pendingresults.TeamAScore, pendingresults.TeamBScore, pendingresults.TeamB) 
VALUES (
  '$pls', 
  '$TeamA', 
  '$TeamAScore', 
  '$TeamBScore', 
  '$TeamB') 
WHERE 
  l1_afixtures.team_name = $TeamA 
AND  
  l1_afixtures.fixture = $TeamB 
AND 
  l1_afixtures.disabled = 'enabled';

這個查詢有什么問題嗎,我知道沒有

 where l1_afixtures.team_name = $TeamA AND  
 l1_afixtures.fixture = $TeamB AND l1_afixtures.disabled = 'enabled';

可以但是我在哪里功能似乎無法正常工作

有任何想法嗎? 謝謝

您可以這樣嘗試:

INSERT INTO Table2 (<columns>)
SELECT <columns>
FROM Table1
WHERE <condition>;

在這種情況下,可能是這樣的:

INSERT INTO pendingresults (TeamAName, TeamA, TeamAScore, TeamBScore, TeamB) 
SELECT TeamAName, TeamA, TeamAScore, TeamBScore, TeamB
FROM l1_afixtures
WHERE 
    l1_afixtures.team_name = $TeamA 
    AND l1_afixtures.fixture = $TeamB 
    AND l1_afixtures.disabled = 'enabled'

您不能在其中INSERT ... VALUES... WHERE

您可以執行INSERT .... SELECT ... WHERE

而且一次只能INSERT一個表。

所以

insert into pendingresults (TeamAName, TeamA, TeamAScore, TeamBScore, TeamB) 
values('$pls', '$TeamA', '$TeamAScore', '$TeamBScore', '$TeamB') 

要么

insert into pendingresults (TeamAName, TeamA, TeamAScore, TeamBScore, TeamB) 
Select TeamAName, TeamA, TeamAScore, TeamBScore, TeamB
from l1_afixtures
where 
    l1_afixtures.team_name = $TeamA 
    AND l1_afixtures.fixture = $TeamB 
    AND l1_afixtures.disabled = 'enabled'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM