2016-06-01 3 views
1

こんにちは、私は教義でこのクエリを実行しようとして定義されていない行0、列51近く '(SELECT FLOOR(RAND()':エラー:クラスは、 '('

$query = $em->createQuery("select a from 
            (SELECT FLOOR(RAND() * 99999) AS random_num) a, 
            'AdminBundle:Video' B 
            WHERE B.VIDEO_KEY NOT IN (A.RANDOM_NUM)"); 
$nums = $query->getResult(); 

しかし、その代わりに、私。 「

+0

つまり、DQLはSQLではありません。 –

+0

DQLでこれを行う方法はありますか? :) – vimuth

+0

ここでは、ほぼ同じ質問が素晴らしい答えです:http://stackoverflow.com/questions/9831985/selecting-from-subquery-in-dql –

答えて

1

この

$query = "select a.random_num from (SELECT FLOOR(RAND() * 99999) AS random_num) a WHERE A.RANDOM_NUM NOT IN (SELECT COALESCE(B.VIDEO_KEY,0) FROM VIDEO B)"; 

     $stmt = $em->getConnection()->prepare($query); 
     $stmt->execute(); 
     $randum = $stmt->fetchAll(); 
をお試しください...誰かがそれに見ることができるかどう

[Semantical Error] line 0, col 51 near '(SELECT FLOOR(RAND()': Error: Class '(' is not defined.

は、それは大きな助けとなり、このエラーを取得メートル
関連する問題