[英]how to select from two not joined tables in mysql
我有兩個沒有公共列的表。 但是有關系。 我有table1,table2。 表1如下:
t1.ID | t1.Name | t1.Number
其中Name是唯一值。
table2如下:
t2.ID | t2.Number1 | t2.Number2 | t2.Country
我的查詢如下:
select t1.Name, t1.Number, t2.country
from db.t1, db.t2
where t1.Number between t2.Number1 AND t2.Number2
查詢的結果是,我兩次獲得每條記錄。 但是,當我添加:
group by t1.Name
我得到正確的結果(每個記錄一次)。 我不想使用分組依據。 如何進行正確的查詢,我是否兩次獲得相同的記錄卻沒有分組依據?
嘗試使用DISTINCT
:
SELECT DISTINCT 1.Name, t1.Number, t2.country
FROM db.t1, db.t2
WHERE t1.Number BETWEEN t2.Number1 AND t2.Number2
這兩個表應該至少有一個共同的列。 否則,您只會得到重復的值。
至少據我所知是這種情況。
select t1.Name ,t1.Number from t1
union
select t2.Number1 ,t2.Number2 from t2
在這種情況下,您可以使用並集。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.