Sql 按多个数据(多对多)排序不';行不通
我有很多有价值的桌子 一个TagData行具有多个VideoData IDSql 按多个数据(多对多)排序不';行不通,sql,doctrine-orm,Sql,Doctrine Orm,我有很多有价值的桌子 一个TagData行具有多个VideoData ID class TagData { /** * @var integer * * @ORM\Column(name="id", type="integer") * @ORM\Id * @ORM\GeneratedValue(strategy="AUTO") */ private $id; /** * @ORM\Column(ty
class TagData
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\Column(type="string",unique=false,nullable=false)
*/
private $name;
/**
* @ORM\ManyToMany(targetEntity="VideoData", mappedBy="tagIds", cascade={"persist"})
*/
private $videoIds;
/**
* Get videos
*
* @return \Doctrine\Common\Collections\Collection
*/
public function getVideos()
{
return $this->videos;
}
和视频数据表
class VideoData implements ItemInterface
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
*
* @ORM\ManyToMany(targetEntity="Acme\TopBundle\Entity\TagData",inversedBy="videos")
* @ORM\JoinTable(name="tag_video")
* )
*/
private $tagIds;
/**
* @var \DateTime
*
* @ORM\Column(name="updatedAt", type="datetime")
*/
private $updatedAt;
我想做的是:
获取属于一个TagData行的VideoID,条件如下
1) 按“updatedAt”排序
现在,mysql如下所示
$query = $em->createQuery(
"SELECT t FROM TagData t JOIN t.videoIds v WHERE
t.id = {$id} order by v.updatedAt");
然后用你的手机取下录像带
$videos = $query->getVideoIds(); // but this data is not sorted by updatedAt
为什么这个命令不起作用
我如何制作它?嘿,tagdata是一个表吗?什么是acmetop捆绑包?它也是一个表吗?所以您在这里有两个表?啊,tagdata是表。我有两个表TagData和VideoData。我重新写了这篇文章