Come gestisce $wpdb COUNT(*)
4 nov 2011, 18:18:47
Visualizzazioni: 14.7K
Voti: 5
Capisco come eseguire query semplici e visualizzare i risultati usando $wpdb. Questo è il mio processo:
<?php $sql = 'select * from wp_votes;'; ?>
<?php $votes = $wpdb->get_results($sql); ?>
<?php if ( !empty ( $votes ) ) { ?>
<?php foreach ( $votes as $vote ) { ?>
<td><?php echo $vote->id; ?></td>
<td><?php echo $vote->post_id; ?></td>
<td><?php echo $vote->date_voted; ?></td>
<?php } ?>
<?php } ?>
Ora, cosa succede se la mia query è più complessa, con un COUNT(*) coinvolto, come questa:
<?php $sql = 'select wp_votes.post_id, wp_posts.post_title, count(*) from wp_votes INNER JOIN wp_posts ON wp_votes.post_id = wp_posts.id group by wp_votes.post_id order by count(*) desc;'; ?>
Questo dovrebbe restituire:
--------+------------+----------+
Post ID | Post Title | Count(*) |
--------+------------+----------+
1 | "My post" | 6
2 | "Hello..."| 5
Sarebbe corretto se facessi qualcosa del genere?
<?php $wpdb->get_results($sql, ARRAY_N); ?>
e poi, per ottenere il conteggio,
<?php echo $row[2]; ?>
AGGIORNAMENTO: A quanto pare, è davvero così semplice, non devo fare nient'altro, $row[x] funzionerà.
Commenti
Tutte le risposte alla domanda
1
0
Puoi semplicemente usare echo $wpdb->get_var( $sql )
:

scribu
13.2K
5 nov 2011 02:57:40
Domande correlate
5
risposte
1
risposte