|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
InnoDB数据表的索引,与InnoDB数据表相比,在InnoDB数据表上,索引对InnoDB数据表的重要性要大得多。在InnoDB数据表上,索引不仅会在搜索数据记录时发挥作用,还是数据行级锁定机制的苊、基础。明天在Access中查询表中最年夜值时,呈现了"试图实行的查询中不包括作为算计函数一部分的特定表达式"毛病,我的SQL语句以下:
selecttop10max(id)fromarticleorderbyiddesc
细心反省SQL语句,并未没有毛病,然后把该语句放进到SQLSERVER中实行,也能准确前往了局。真的很无法了,在网上搜刮办理办法,本来,在ACCESS中,假如语句中包括有聚合函数,那末语句select中除聚合函数列外,别的一切列必定要在groupby中。
改写查询语句:
selecttop10max(id)fromarticlegroupbyidorderbyiddesc
实行乐成.
假如伴侣看的够细心,大概你已看出了成绩,下面讲到的"假如语句中包括有聚合函数,那末语句select中除聚合函数列外,别的一切列必定要在groupby中",而我的例句"selecttop10max(id)fromarticleorderbyiddesc"中并没有包含别的列,为何也要加groupby呢?经测试后发明,本来是由于我加了orderbyiddesc排序前提的缘故原由,假如不加该排序前提,语句"selecttop10max(id)fromArticle"也是能够实行乐成的。
一向都很罕用Access,如今才发明Access与SqlServer比起来还真贫苦。
附:在Access一样必要增加groupby的别的函数语句:
selectmin(id)fromarticlegroupbyidorderbyiddesc
selectcount(id)fromarticlegroupbyidorderbyiddesc
selectsum(id)fromarticlegroupbyidorderbyiddesc
等。mysql的prepare其实是本地PHP客户端模拟的,并没有根据你mysql的设置做字符集的调整。应该交与mysqlserver端做prepare,同时得调用mysql_set_character_set去操作,server才会按照字符集去做转义。 |
|