说我的员工表,其中任何员工可以与任何其他雇员(多对多)。每位员工都有许多独立存储的特性。sql结果集的顺序定义?
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”相关然后我得到字符之后。通过这种方式,我可以知道哪两名员工相关(哪些是必需的)。但是,我想知道这个命令是否仅仅是运气,还是定义明确的。这是在SQLite中。
如果没有定义的方式,怎么还能做什么呢?另外,我需要知道他们各自的角色。我想最好在一个查询中完成它。你能想到其他的一些查询吗?
由于提前,
马尼什
PS:这些都不是实际表。他们在这里提出问题的简单性。
一般来说,如果你没有明确指定'ORDER'在SQL那么你可以以任意顺序的结果,当然,这是我已经与SQLServer的... –