Drupal 怎么通过数据库 API 实现 count 计数?

比如要统计所有节点的数量,直接写 SQL 语句的话可以用 count(*) 实现,在 Drupal 里用 API 要怎么写?

SELECT count(*) FROM node WHERE type = 'article';
1
0

1 个回答

使用数据库 API 时可用 countQuery() 方法获得计数

$count = \Drupal::database()->select('node', 'n')
  ->condition('type', 'article')
  ->countQuery()
  ->execute()
  ->fetchField();

使用 entityQuery 时可以使用 count() 方法获得计数

$count = \Drupal::entityQuery('node')
  ->accessCheck(FALSE)
  ->condition('type', 'article')
  ->count()
  ->execute();

官方文档:https://www.drupal.org/docs/8/api/database-api/dynamic-queries/count-qu…

1
0
登录注册后添加答案