我在这种模式下有三张桌子:
时间1 ,列“数据”格式为gg / mm / aaaa
手动,列“valMan”和“dataora”格式相同。
自动,列“valAuto”和“dataora”格式相同。
我必须从表Automatic中找到值“valAuto”,其中Data.Time1是= dataora.Automatic,如果值为null,我从valMan.Manual获取此值,在同一Data.Time1 = dataora.Manual
访问sql或vb以进行访问。
对我来说非常重要...非常感谢!!!
答案 0 :(得分:1)
SELECT Time1.Data,
IIf(IsNull([valAuto]),[valMan],[valAuto]) AS Expr1
FROM (Time1 LEFT JOIN Automatic ON Time1.Data = Automatic.dataora) LEFT JOIN
Manual ON Time1.Data = Manual.dataora;
或
SELECT Time1.Data,
Nz([valAuto],[valMan]) AS Expr1
FROM (Time1 LEFT JOIN Automatic ON Time1.Data = Automatic.dataora) LEFT JOIN
Manual ON Time1.Data = Manual.dataora;
答案 1 :(得分:0)
不了解访问权限,但这应该在MS SQL Server中进行
SELECT
ISNULL(a.valAuto, m.valMan) AS whatIWant
FROM
Automatic a
INNER JOIN Time1 t ON a.dataora = t.Data
INNER JOIN Manual m ON t.Data = m.dataora
如果valAuto为null,则ISNULL命令用valMan替换valAuto。