2

我有一个主要的 kew,它是一个名为 binid 的字段中的二进制(16) UUID。
我想使用 SELECT 语句获取所有列,包括二进制 id。

我知道我可以执行“SELECT * FROM TABLE”,但是如何与 HEX(binid) 结合使用?

这在我获得单个字段时有效:“SELECT HEX(binid) AS binid FROM TABLE”
但我不想提及所有字段(太多)。有没有办法在一个语句中获取 ALL 和 HEX?

PS。我正在创建基于 stackoverflow 问题:如何将 uuid 存储为数字?

4

3 回答 3

1

选择*将按原样选择所有字段,而不进行转换。要选择它们以更改它们的格式,您必须指定要选择的所有字段,

例如:

SELECT HEX(`binid`) as `bindid`, `name`, FROM_UNIXTIME(`birthday`) as `birthday`, `gender` FROM `table`;

您可以应用任意数量的转换。

你也可以这样做:

SELECT HEX(`binid`) as `hexdid`, * FROM `table`;

在这种情况下,结果将具有binid十六进制格式,命名hexid,以及原始binid以及表的其他字段。

于 2013-04-16T22:39:01.250 回答
0
select col1, col2, col3 from table

例如,如果表被称为 T 并设置为:

        T
=================
| binid | A | B |
| 0     | 1 | a |
| 1     | 2 | b |
| 10    | 3 | c |

select hex(binid), A, B from table
于 2013-04-16T22:36:42.583 回答
0

你可以这样做:

Select *, HEX(binid) as clearBinId from Table

这将选择所有列(包括 binid)并选择 HEX(binid) 作为名为“clearBinId”的列

于 2013-04-16T22:38:33.260 回答