我是 SQL 服務器的新手,想知道我應該如何處理以下情況:
我有兩張桌子:
第一個表有這個月的訂單,有以下資料
| 產品 | 命令 |
|---|---|
| 第一的 | 2000 |
| 第二 | 3000 |
...和 ??10000 行
第二張表有下個月的預期訂單,并有以下資料:
| 產品 | 命令 |
|---|---|
| 第一的 | 3000 |
| 第二 | 1000 |
...和 ??12000 行。
現在,我想查看第二張表中的產品,其中預期訂單大于第一張表中訂單列中的值。例如。在我們的例子中,輸出應該是
| Product |
| First |
由于列名相似,您能幫我解決這個問題嗎?
uj5u.com熱心網友回復:
例如,您可以使用別名按產品名稱加入他們并比較他們的訂單
select eo.product, eo.order from current_orders co
join exp_orders eo on co.product = eo.product
where eo.order < co.order;
uj5u.com熱心網友回復:
您必須使用內部連接命令,sintax 是這樣的:
SELECT column_name(s) FROM table1 INNER JOIN table2 ON table1.column_name = table2.column_name;
內部聯接將為您提供兩個表中條件為真的行,然后為您想要的其他條件添加 AND,如下所示:
SELECT Product,Orders FROM table2 INNER JOIN table1 ON table2.Product = table1.Product AND table2.Product > table1.Product ;
uj5u.com熱心網友回復:
使用存在檢查所需的標準:
select *
from table2 t2
where exists (
select * from table1 t1
where t1.product = t2.product
and t2.order > t1.order
);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/468902.html
