D6では、ノードテーブルにはノードのタイトルしかありません。特定のノードの本体(コンテンツ)を取得するためにデータベースをクエリする方法は?
更新:コンテンツの本文がnode_revisionsテーブルに格納されていることがわかりました。
Drupal 7
Drupal 7では、7つの本文コンテンツがfield_data_body
およびfield_revision_body
テーブルに保存されます。
したがって、タイトルと本文を取得するクエリの例は次のようになります。
SELECT title, r.body_value, n.changed FROM node n LEFT JOIN field_data_body r ON n.nid = r.entity_id AND n.vid = r.revision_id
Drush経由でクエリを実行するには、上記のクエリの後にdrush sqlq
を実行します。
教育目的のために、これはD6ビューが生成するSQLです(SQLプレビューによると)。
この特定のノードは、ノードID 1を持つノードです。
SELECT node_revisions.body AS node_revisions_body,
node_revisions.format AS node_revisions_format
FROM node node
LEFT JOIN node_revisions node_revisions
ON node.vid = node_revisions.vid
WHERE node.nid = 1
ただし、モジュールでは、保守性とセキュリティのためにdb_query()などの適切なメソッドを使用する必要があります。