小编MR.*_*net的帖子

如果存在则更新,如果MySQL中不存在则插入行

我在这里问了类似的问题......

内部加入的三个表

但我无法得到足够的答案来解决我的问题,所以我不得不再次提问......

我有下表......

**

任何想要播放数据的人请在http://sqlfiddle.com/#!9/a0807进行测试

**

Table1
IDA    colB    colC    
111       a       w    
222       b       w    
333       c       s        
444       b       g    



Table2
IDB    colB    colC    
11       w       f    
12      w       r    
13      s       g    



Table3
IDA     IDB       
111     11         
222     12           
333     13       
444     14
Run Code Online (Sandbox Code Playgroud)

下面的代码将从table1复制或插入到表中没有问题,但是有错误的table2 IDB(因为table2 IDB值应该从内部连接到table3)

INSERT INTO table2 SELECT * FROM table1 WHERE IDA = 111
Run Code Online (Sandbox Code Playgroud)

但是将所有从table1复制到table2,这是错误的......

所以,我所做的是......以下的内部联系......但是没有工作......

INSERT INTO table2
(SELECT * FROM table1 b 
LEFT JOIN table3 c ON c.IDA = …
Run Code Online (Sandbox Code Playgroud)

php mysql sql

3
推荐指数
1
解决办法
8360
查看次数

分组和在哪里一起?

我有下表...

        ID      awaiting    approve decline      
        100       1         0         0     
        100       0         0         1     
        102       1         0         0     
        103       0         1         0     
        104       0         1         0     
        104       0         1         0     
        106       1         0         0     
        107       0         1         0     
        107       1         0         0     
        107       1         0         0
Run Code Online (Sandbox Code Playgroud)

从上表我想得到的是,如果ID的数量多于一次列出,并且其中一个ID或两个或所有ID等待= 1?计算这些ID符合上述条件.

我需要的另一个查询是,其中,如果ID仅列出并且只有一次且等待= 1;

请帮忙....

mysql sql

1
推荐指数
1
解决办法
81
查看次数

标签 统计

mysql ×2

sql ×2

php ×1