* TSQLに対する回答、学習する前はMS-Accessでした*
SQLにはdoubleデータ型がないため、floatを使用する必要があります。
連結演算子を使用するには、またはを使用+して値を文字列に変換する必要がありますCASTCONVERT
データ:
declare @cars table (hhid float, vmid float)
declare @table2 table (id float)
insert @cars values (1,1),(2,2)
insert @table2 values (11),(22),(12),(21)
クエリ:
SELECT x.*
FROM (
SELECT CAST(c.hhid AS nvarchar(20)) + CAST(c.vmid AS nvarchar(20)) AS zid
FROM @cars c
) x
INNER JOIN @table2 t ON t.id = x.zid
*MS-Accessでの試行*
これはもっとうまく機能しますか、私にはあなたのテーブル参照がわずかに絞り込まれているように見えます
SELECT x.*
FROM (SELECT c.hhid & c.vmid AS zid
FROM cars c) x
JOIN table2 t ON t.id = x.zid;