Note that there are some explanatory texts on larger screens.

plurals
  1. POMySQL query - joining two tables producing duplicate results
    primarykey
    data
    text
    <p>I'm running the following MySQL query in PHP.</p> <pre><code>"SELECT * FROM `challenges`,`verifications` WHERE (`challenges`.`user_id`='".$this-&gt;record['id']."' OR `challenges`.`opponent_id`='".$this-&gt;record['id']."') AND `challenges`.`is_verified`='0' AND (`challenges`.`status`='in-progress' OR `challenges`.`status`='pending') AND ( (`verifications`.`user_id`='".$this-&gt;record['id']."' OR `verifications`.`opponent_id`='".$this-&gt;record['id']."') AND (`verifications`.`user_verified`!=NULL AND `verifications`.`opponent_verified`=NULL) ) LIMIT 100"; </code></pre> <p>This query is returning duplicate records for some reason. If anyone has any insights, I would greatly appreciate it.</p> <p>Here is the structure for the two tables (challenges and verifications):</p> <p>Challenges Table:</p> <pre><code>CREATE TABLE `challenges` ( `id` int(11) NOT NULL auto_increment, `wager` int(11) NOT NULL, `type` varchar(255) NOT NULL, `user_id` int(11) NOT NULL, `opponent_id` int(11) NOT NULL, `start_date` date NOT NULL, `date_created` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `start_time` time NOT NULL, `is_verified` tinyint(1) NOT NULL default '0', `status` varchar(255) NOT NULL default 'pending', `winner_id` int(11) default NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=0 ; </code></pre> <p>Verifications Table:</p> <pre><code>CREATE TABLE `verify` ( `id` int(11) NOT NULL auto_increment, `user_id` int(11) NOT NULL, `opponent_id` int(11) NOT NULL, `challenge_id` int(11) NOT NULL, `user_verified` int(11) default NULL, `opponent_verified` int(11) default NULL, PRIMARY KEY (`id`), UNIQUE KEY `challenge_id` (`challenge_id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=0; </code></pre> <p>Thanks for your help, and if you need any more info please let me know.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload