2017-01-22 66 views
-1

如何在MySQL中每行选择两次相同的UUID值?如何在MySQL中每行选择两次相同的UUID值?

示例代码:

SELECT CONCAT('A: ', A, ', ', B, '-----', B) C 
FROM 
(
    SELECT UUID() B 
    ,A 
    FROM 
    (
    SELECT 1 A 
    UNION ALL 
    SELECT 2 
) IQ 
) OQ; 

预期值:

  • C(列)
  • 答:1,AAAAAAAAAAAA-AAAAAAAA-AAAAAAAAAAAA ----- aaaaaaaa- AAAA-AAAA-AAAA-AAAAAAAAAAAA
  • 答:2,bbbbbbbbbbbb-BBBBBBBB-bbbbbbbbbbbb ----- bbbbbbbbbbbb-BBBBBBBB-bbbbbbbbbbbb
从代码示例

实际例子输出以上:

  • C(列)
  • 答:1,a1a3a027-e0fc-11e6-9aa2-bcee7b9e8497 ----- a1a3a038-e0fc-11e6-9aa2- bcee7b9e8497
  • 答:2,a1a3a047-e0fc-11e6-9aa2-bcee7b9e8497 ----- a1a3a04a-e0fc-11e6-9aa2-bcee7b9e8497

换句话说,我不能得到在7位和8(基于一)的索引对于同一行是相同的。

我也尝试在MID,CONCAT和CAST中包装UUID()函数无济于事。

的MySQL版本:

C:\[directory]\mysql\data>mysql -V 
mysql Ver 14.14 Distrib 5.7.17, for Win32 (AMD64) 
+1

Aaaaaaaaaaaaaaaaa – Strawberry

+0

为什么投下了票?无论我的示例代码是否存在某些明显的问题,或者MySQL中是否存在错误,答案都会更有帮助。 – David

回答

0

我能够通过存储UUID(结果在线解决问题)作为变量,即使我从来没有使用的变量:

SELECT CONCAT('A: ', A, ', ', B, '-----', B) C 
FROM 
(
    SELECT 

  @unused := #otherwise useless variable
  UUID() B 
     ,A 
    FROM 
    (
     SELECT 1 A 
     UNION ALL 
     SELECT 2 
    ) IQ 
) OQ; 
相关问题