概述
我有一个内部连接语句,它将 5 个表链接在一起,如果我自己这么说的话,它的效果非常好。
现在返回的值之一是十六进制,它位于名为Value的列中,但是,Value列还包含其他值,因此我不能简单地转换整个列。
Value 列中的每个 Hex 条目在名为DataTypeID的列中都有一个标识符18。
问题
如果 DataTypeID = 18,我如何仅转换列 Value 中的十六进制条目。
我知道这需要一个功能:
SELECT CONVERT(INT, CONVERT(VARBINARY
但我不确定如何编写它以及将它放在哪里,是在我的内部连接语句之前还是之后?
SELECT Data.Value AS Value, Entry_Data.DataTypeID AS DataTypeID
From Database.Entry
INNER JOIN Database.Data on Entry_Data.DataTypeID=DataTypeID
INNER Join Database.Data on Data.Value=Value
请注意,这不是脚本的准确示例,仅用于示例目的
现在我假设我会在这个查询之上创建我的函数,然后在它下面添加一个where函数。
列名和标识符是准确的。