共通の要素を持たない2つのテーブルから選択したい 私はこのコードを試していますが、 '、'の近くに不正な構文があります。CommonElementのない2つのテーブルから選択
select top 1 inventory.name, customer.name
from inventory
where inventor.name='test' , customer where customer.name='test2'
共通の要素を持たない2つのテーブルから選択したい 私はこのコードを試していますが、 '、'の近くに不正な構文があります。CommonElementのない2つのテーブルから選択
select top 1 inventory.name, customer.name
from inventory
where inventor.name='test' , customer where customer.name='test2'
これは2つのテーブルのデカルト積につながります。 (クロス結合)。
SELECT TOP 1 i.NAME
,c.NAME
FROM inventory i
cross join customer c
WHERE i.NAME = 'test'
AND c.NAME = 'test2'
where
句が条件のため,
を使用していない、このようにしてみてください。条件を接続するには、and
またはor
のどちらかを入力します。 join
も必要です。
だから、私はあなたが意図し考える:
select top 1 i.name, c.name
from inventory i cross join
customer c
where i.name = 'test' and c.name = 'test2';
通常、そこjoin
ためjoin
条件となりますが、あなたの質問には、1を示唆していません。
select top 1 i.name, c.name
from inventory i cross join
customer c
on i.customer_id = c.customer_id
where i.name = 'test' and c.name = 'test2';
しかし、その後、再び、あなたはwhere
句でname
列を制限しているので、なぜだけでない:これは予想される
select 'test', 'test2';
と完全にテーブルを使用で済ましますか?
あなたは単に..希望あなただけのトップ1の列を必要とするoutput.Assumingため
SELECT (SELECT top 1 i.name
FROM inventory i
WHERE i.name = 'test') InventoryName,
(SELECT TOP 1 c.name
FROM customer c
WHERE c.name = 'test2') Customername
を以下のようなクエリを書くことができますので、次の2人の全く関係のない名前、インベントリから1、顧客からのものをしたいですか? – jarlh