t123 wrote:
I have a select count() that seams be ignoring one clause. Data:
Table:
ID CA-Char CB-Int
1 dsfsd 6
2 dsfsd 0
3 dsfsd 1
4 sdrtt 1
SQL is:
"SELECT count(id) FROM Table WHERE CA-Char = 'dsfsd' AND CB-Int > 0"
Returns 3 - Should be 2
No, it returns 2 as it should. I'm guessing that you have white space in
your CA-Char column, try:
select * from Table where CA-Char = 'dsfsd';
I tested this:
create table en(ID int, CAChar varchar(10),CBInt int);
insert into en values(1,'dsfsd', 6 );
insert into en values(2,'dsfsd', 0 );
insert into en values(3,'dsfsd', 1 );
insert into en values(4,'sdrtt', 1 );
mysql> select * from en;
+------+--------+-------+
| ID | CAChar | CBInt |
+------+--------+-------+
| 1 | dsfsd | 6 |
| 2 | dsfsd | 0 |
| 3 | dsfsd | 1 |
| 4 | sdrtt | 1 |
+------+--------+-------+
4 rows in set (0.00 sec)
mysql> SELECT count(ID) FROM en WHERE CAChar = 'dsfsd' AND CBInt > 0;
+-----------+
| count(ID) |
+-----------+
| 2 |
+-----------+
1 row in set (0.00 sec)