草庐IT

zend_db_select

全部标签

php - Drupal 7 - 不区分大小写的 LIKE 与 db_select

我无法使用MySQL和Drupal7使查询不区分大小写。这是我的模块代码:$results=db_select('people_table','p')->fields('p');if(array_key_exists('department',$_GET)){$results->condition('Department','%'.db_like($_GET['department']).'%','LIKE');}return$results->orderBy('Name','ASC')->execute();在URL中使用?department=Chemistry,我得到三个结果。在

mysql - 如何在 SQL 中的另一个 select 中编写 select 语句

谁能告诉我这个查询有什么问题?它在第二个选择附近给出语法错误SELECTb.mc_boxes_idmc_boxes,t.idtitles,t.title,t.languages_idlanguages,MAX(h.idtitle_history),MAX(h.edition)(SELECTh.preview,h.fileWHEREh.idtitle_history=MAX(h.idtitle_history))FROMmc_boxes_has_titlesbLEFTJOINtitlestONb.titles_idtitles=t.idtitlesLEFTJOINtitle_histor

mysql - 根据select删除多行

我正在尝试制作一个触发器,该触发器将根据另一个表中的选择从一个表中删除行表格运算符位置列operator,line,pos表格位置标签列line,position,tag表operatortags列operator,tag我的触发器看起来像这样CREATETRIGGERremoveOperatorPositionAFTERDELETEONoperatorpositionsFOREACHROWBEGINDELETEFROMoperatortagsWHEREgen=NEW.operatorANDtag=(SELECTtagFROMpositiontagsWHEREposition=NEW.

mysql - 事件记录(mysql db)文本字段中的字符数是否有限制

这是我的模式:create_table"delayed_jobs",:force=>truedo|t|t.integer"priority",:default=>0t.integer"attempts",:default=>0t.text"handler"t.text"last_error"t.datetime"run_at"t.datetime"locked_at"t.datetime"failed_at"t.string"locked_by"t.string"queue"t.datetime"created_at"t.datetime"updated_at"end我正在为电子邮件使

php - Drupal db_select 和一个 MYSQL 函数作为条件

好的,让我解释一下我的情况。我正在尝试这样进行mysql查询:Select*FROMdatesnWHERE(MONTH(FROM_UNIXTIME(n.date))='12');但我需要在db_select函数中进行查询。如果我添加:$this->query->condition('MONTH(FROM_UNIXTIME(n.date))',12,'=');Drupal删除了括号并将函数封装在引号中。我将如何添加这样的条件。 最佳答案 确定我自己的答案!非常愚蠢,但在花了一个多小时搜索之后,我敢打赌我可以帮助别人。我变了$this-

mysql - 德鲁巴 : How can I know if the db is mysql or postgres

我有一个复杂的查询,因为我需要我的模块同时适用于mysql和postgres,所以我需要编写它的两个版本。不幸的是,我不知道如何检查我使用的数据库是mysql还是postgres,以了解使用哪个查询。你知道一个函数是否可以返回这个值吗? 最佳答案 正如@kordirko所说,一种选择是查询服务器版本:SELECTversion();将在MySQL和PostgreSQL上工作,但不是most。otherdatabaseengines.虽然解析版本字符串总是有点脆弱,MySQL只返回一个版本号,如5.5.32而PostgreSQL返回类

MySQL Select from 列使用 ^ 作为分隔符

我的问题类似于MySQLSplitStringandSelectwithresults.目前我有2个表:学生uid|subject_id|name1|1^2^3^4|a2|2^3^|b3|1|c主题uid|subject_name1|math2|science3|languange4|sport我期望的结果是:uid|name|subject_passed1|a|math,science,languange,sport2|b|science,languange3|c|sport我试过这个查询:SELECTstudent.uid,student.name,group_concat(sub

MySQL Select 列搞砸了

问题来了。首先,我在MySQL中创建了一个数据库CREATETABLEUsers(UserTEXT,PassTEXT,IDTEXT,RegDateTEXT,EmailTEXT,RankTEXT);我现在有这个数据库+-----------+------------------+------------+----------+-------------------+------------+|User|Pass|ID|RegDate|Email|Rank|+-----------+------------------+------------+----------+-----------

php - 查询优化 : Which SELECT syntax is faster?

给定5,000个记录在数据库中提取的ID,您认为哪个查询更快?使用php循环遍历5000个ID,并对每个ID执行SELECT查询,foreach($idsas$id){//dothequery$r=mysql_query("SELECT*FROMTABLEWHEREID={$id}");}或者将所有id收集到一个数组中,然后使用SELECT*FROMTABLEWHEREIDIN(1to5000)//assuming$ids=array(1,2----upto5000);$r=mysql_query("SELECT*FROMTABLEWHEREIDIN(".join(",",$ids).

php - 如何在同一个 mysql 查询中使用 SELECT+INSERT?

我有一个php脚本,它处理来自mysql表“keywords”(列:id-关键字)的关键字,然后将数据保存到另一个表“data”(列:id[foreignkeykeywords.id]-dataname-数据值)。我的问题是,当脚本准备好保存数据时,我只有关键字,没有id。那么有没有一种方法可以获取关键字id并将数据保存在一个mysql查询中?(我的意思是无需执行诸如SELECTidfromkeywordswherekeyword=keyword之类的操作,然后针对INSERT运行另一个查询。 最佳答案 如果选择表和修改表不同——你