[英]Get table names with Symfony+Doctrine excluding tables made from relations
[英]Doctrine: Get a random name from a table of names
我有一個只有兩列的 SQL 表:“nameid”和“name”。 我想從數據庫中獲取一個隨機名稱。
在我這樣做之前:
$result = mysql_query("SELECT * FROM nametable",$db);
$number = mysql_num_rows($result);
$random = rand(1,$number);
list($name) = mysql_fetch_row(mysql_query("SELECT name FROM nametable WHERE nameid=$random",$db));
我怎樣才能對 Doctrine 做同樣的事情?
MySQL 有一個 function 用於生成隨機浮點值RAND()
。 按此排序時,名稱將隨機排序。 在此之后,您只需 select 第一個隨機排序的名稱。
SELECT name FROM nametable ORDER BY RAND() LIMIT 1
對於 Doctrine,這可以使用
$name = Doctrine::getTable('nametable')
->createQuery()
->select('name')
->orderBy('RAND()')
->fetchOne();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.