mysql - 比较 Drupal 中的 2 个字段

标签 mysql drupal drupal-7

我想在 Drupal 中做一个简单的 SQL 查询,但我不确定如何做。我想实现这一目标:

SELECT COUNT(nid) AS i_count FROM node WHERE `created` != `changed`;

我有以下代码,它不起作用:

$query = db_select('node', 'n');
$query->addExpression("COUNT(nid)","i_count");
$query->condition("created","changed","!=");
$i_number_published = $query->execute()->fetchCol();

它不起作用的原因是它将列created 与字符串值"changed" 进行比较。有什么方法可以告诉它比较列而不是列字符串?

最佳答案

使用where()成员函数根据表中其他字段添加条件:

$query = db_select('node', 'n');
$query->addExpression("COUNT(nid)","i_count");
$query->where("created != changed");
$i_number_published = $query->execute()->fetchCol();

关于mysql - 比较 Drupal 中的 2 个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7673137/

相关文章:

Java检查数据库中是否存在该值

Centos 5.4 上的 php 5.2.5

php - 单击 drupal 主页上的链接时没有任何反应

mysql - 来自另一个表的有限时间范围的聚合

MySQL TIME_DIFF expr1 和 expr2 以秒.微秒为单位

php - 如何更改 MySQL 查询的结果排序?

php - 尝试连接两个 mysql 表中的数据以便按其排序

php - 如何让 PagerDefault 查询与 Drupal 7 一起正常工作?

drupal - 设置表单暴露过滤器默认值

java - 如何将 SQL 结果集输出限制为 1 个结果而不是每个查询结果?