2015-09-26 46 views
0

外鍵trade.ticker_id指向ticker.id。從table1中查找table2中有零行的外鍵鏈接到的外鍵

我想查找'ticker'中所有行中'零交易'中有零行的鏈接。

mysql> describe trade; 
+-----------+-------------+------+-----+---------+----------------+ 
| Field  | Type  | Null | Key | Default | Extra   | 
+-----------+-------------+------+-----+---------+----------------+ 
| id  | int(11)  | NO | PRI | NULL | auto_increment | 
| time  | datetime | NO |  | NULL |    | 
| price  | float  | NO |  | NULL |    | 
| quantity | int(11)  | NO |  | NULL |    | 
| source | varchar(64) | YES |  | NULL |    | 
| buyer  | varchar(64) | YES |  | NULL |    | 
| seller | varchar(64) | YES |  | NULL |    | 
| initiator | varchar(64) | YES |  | NULL |    | 
| ticker_id | int(11)  | YES | MUL | NULL |    | 
+-----------+-------------+------+-----+---------+----------------+ 
9 rows in set (0,00 sec) 

mysql> describe ticker; 
+-------------+--------------+------+-----+---------+----------------+ 
| Field  | Type   | Null | Key | Default | Extra   | 
+-------------+--------------+------+-----+---------+----------------+ 
| id   | int(11)  | NO | PRI | NULL | auto_increment | 
| name  | varchar(64) | NO |  | NULL |    | 
| long_name | varchar(250) | YES |  | NULL |    | 
| exchange_id | int(11)  | YES | MUL | NULL |    | 
+-------------+--------------+------+-----+---------+----------------+ 
4 rows in set (0,00 sec) 
+0

注意,錢是正常DECIMAL – Strawberry

+0

我想它不會浮動,如果這是一家銀行,但對於我的應用來說,這是最好的。我使用Matlab來分析股價。 – ni9e

回答

0

試試這個:

SELECT * FROM ticker WHERE id NOT IN (SELECT ticker_id FROM trade) 
+0

這也適用。 – ni9e

0

您可以使用left joinis null或者換句話說抗加入

select tc.* from ticker tc 
left join trade tr on tr.ticker_id = tc.id 
where tr.ticker_id is null 
+0

太棒了!謝謝,我是一個完整的SQL noob。 – ni9e