草庐IT

ordered_date

全部标签

LIKE term%ORDER BY int MySQL查询优化

我的问题是关于在使用前缀匹配时处理VARCHAR上的MySQL索引和intCOLUMN。例如如果我有这样的查询:SELECT*FROMtblWHEREnameLIKE'query%'ORDERBYweightDESCLIMIT5考虑到我有一个索引,一个名称->权重,该索引是否需要查找前缀query的所有外观,然后使用ORDERBY,或者他是否保持交叉计算索引,即使使用前缀匹配(%)。我为此感到困扰,因为对于流行的名字(例如query=john),我可能会发现自己要搜索很长时间才能找到john的所有外观,这会使限制变得无用,并且在我处理时查询会变慢具有大型数据集。

mysql - Symfony2 和 Doctrine : Order entites by foreign attribute

我想使用选择来获取带有DoctrinesQueryBuilder的实体数组。但我需要一个ORDERBY,它使用一个外部属性(与外键相关的表中的属性)。我想直观地写的是这样的:$repo=$this->getDoctrine()->getRepository('MyBundle:relation_table');$query=$repo->createQueryBuilder('r')->orderBy('r.fevent.date','DESC')->getQuery();毫不奇怪,这不起作用。在SQL中,我的SELECT看起来像这样:SELECTr.*FROMrelation_tab

mysql - ORDER BY 子句使查询变慢,尽管结果集很小

我有以下表格(删除了不相关的内容):createtablePayment(idintnotnullauto_increment,statusintnotnull,primarykey(id));createtableBooking(idintnotnullauto_increment,paymentIdintnotnull,nrOfPassengersintnotnull,primarykey(id),keypaymentFK(paymentId),constraintpaymentFKforeignkey(paymentId)referencesPayment(id));Bookin

MySQL 查询 ORDER BY DateTime 问题

我正在尝试按大于现在升序然后小于现在降序的最新更新日期时间对查询进行排序。这是我想要的输出:2014-06-0100:00:002014-06-0400:00:002014-06-0500:00:002014-06-0600:00:002014-05-1900:00:002014-05-1500:00:000000-00-0000:00:00但我得到的是这个:2014-06-0100:00:002014-06-0400:00:002014-06-0500:00:002014-06-0600:00:000000-00-0000:00:002014-05-1500:00:002014-05

mysql - 为什么在 "to_date"表达式中将 "where"应用于已经是 "date"类型的变量?

我觉得这个问题应该很容易回答,但由于某些原因,我到处搜索并空手而归,即使使用mysqldocs中的搜索功能也根本没有返回“to_date”功能!!!有人可以解释为什么在已经是“日期”变量的“bdate”上使用“to_date”吗?为什么要再次将其转换为日期?实际上对“to_date”的解释很受欢迎,因为搜索文档没有产生任何有用的东西?在一些讲座幻灯片中,教授举了一个例子:mysql>createtablestudent(SIDDECIMAL(7)primarykeynotnull,SNAMEVARCHAR(20),MAJORCHAR(4),YEARDEC(1),BDATEDATE);然

mysql - 使用 "ORDER BY"更改查询结果

我最近正在学习SelfJoin的SQL教程.给出的表定义非常简单:stops(id,name)route(num,company,pos,stop)这里,stop属性指的是在stops表中提供名称的站点的id。如果您查看问题#10,我提出了以下解决方案,该站点指示该解决方案产生了正确的结果:SELECTdistincta.num,a.company,bstops.name,e.num,e.companyFROMrouteaJOINroutebON(a.company=b.companyANDa.num=b.num)JOINstopsbstopsONbstops.id=b.stopJOI

mysql - 在 MySQL 中根据 YEAR、WEEK 和 WEEKDAY 计算 DATE

和标题差不多我基本上想做一个简单的查询...SELECT*FROMsign_in_outWHEREuser_id=6ANDtime_signed...获取指定日期之前最近的登录/注销事件,以确定相关用户在该天开始时是登录还是注销。上面的查询工作正常,但问题是我没有那样的日期,我有YEAR、WEEK和WEEKDAY。如何在MySQL中根据这些创建DATE?谢谢 最佳答案 SELECT*FROMsign_in_outWHEREuser_id=6ANDtime_signed检查手册MAKEDATE

mysql - 为什么我的带有 ORDER BY 的 MySQL SELECT 语句这么慢,即使列上有 INDEX?

我有一个movies表。它有130万行。该表在title列上有一个INDEX,顺序为asc,长度为255。title列本身是一个VARCHAR(1000)。即使使用该设置,以下查询也需要8秒才能运行。关于为什么会这样,有人在黑暗中有想法或镜头吗?我很困惑,因为这似乎是一个需要解决的基本问题。SELECTtitleFROMmoviesORDERBYtitleLIMIT150000,50000当我取出ORDERBY时,查询速度超快(0.05秒):SELECTtitleFROMmoviesLIMIT150000,50000 最佳答案 编辑

java - com.mysql.jdbc.MysqlDataTruncation : Data truncation: Data too long for column 'DATE' at row 1

我的实体类:@Entity@Table(catalog="emp",name="person")@XmlAccessorType(XmlAccessType.FIELD)publicclassPersonimplementsSerializable{privatestaticfinallongserialVersionUID=1L;/***/@Column(name="ID",nullable=false,length=50)@Basic(fetch=FetchType.EAGER)@Id@XmlElementStringid;/***/@Column(name="ADDRESS",l

mysql - 如何在 MySQL 的 str_to_date 中使用 %U

我在遗留数据库中将每周指标的日期存储为具有以下格式的字符串:201010使用%Y%U格式(即年份后跟周数)所以我尝试通过执行STR_TO_DATE(time_week,'%Y%U')将其反转为日期时间列,但它似乎不理解周格式当我对硬编码字符串进行测试时,它也不起作用mysql>selectstr_to_date('201501','%Y%U');+---------------------------------+|str_to_date('201501','%Y%U')|+---------------------------------+|2015-00-00|+---------