私は従業員のテーブルがあり、その従業員は他の従業員と関連付けることができます(多対多)。各従業員には、個別に格納される多くの特性があります。sql resultset orderが定義されていますか?
emp: id,name
related: name,emp1role,emp1id,emp2role,emp2id
chars: empid,name,value
「xxx」で関連している従業員のすべての特性を関係とともに取得したいと考えています。私は現在、このクエリを使用しています:
SELECT c.empid, c.Name, c.Value
FROM chars as c, related as r
WHERE r.name='xxx' AND (r.emp1id=c.empid OR r.emp2id=c.empid)
これは動作しemp22 & emp43が関連している場合、それは、私はそうでemp22と続くemp43の文字を取得しています「XXX」を経由して、関連する従業員は別の、すなわち後のものを提供します。このようにして、どの2人の従業員が関連しているかを知ることができます(これは必要です)。しかし、私はこの命令が単なる運であるか、それとも明確に定義されているかを知りたい。これはSQLiteにあります。
定義されていない場合はどうすればいいですか?また、それぞれの役割を知る必要があります。私は好ましくは1つのクエリでそれをやりたい。あなたは他のいくつかのクエリを考えることができますか?事前に
おかげで、
マニッシュ
PS:これらは、実際のテーブルではありません。彼らはここで質問をするのが簡単です。
一般に、SQLで 'ORDER'を明示的に指定しないと、任意の順序で結果を得ることができます。確かに、これはSQLServerで経験したものです。 –