Missing rows in Visual DBA, exist when queried specifically I have an interesting issue on which Google has failed me.
Background
I am working with medical records managed with Ingres SQL. The other day I wrote a simple query in Excel to pull all patient rows that have died in a set date range and output them as a report. This query works. I happened to notice (because of my date range) that I was missing a recent row. Upon further inspection I realized I am missing more rows, not just in this report.
Details of issue
When I query specifically for these missing rows (by selecting their specific patient ID from its column) they exist. When looking at Visual DBA at the table in which they reside and were just queried from successfully, they do not appear.
Similarly, these missing rows do not appear in the raw data pulled by my Excel query, whereas other rows meeting the same criteria do appear. I have looked for inconsistencies between rows that are showing up in Visual DBA and rows that are not. They are all consistent (null values, format, etc) and have differences only in value, not type. ie, last name is 'Jones' instead of 'Smith'.
My question
Why are rows missing from Ingres Visual DBA (table 'x' let's say) but when queried specifically in Ingres Visual SQL from table 'x' they appear?
This is a serious issue for us as rows are missing from automatically generated medical reports and vital information could be missed.
Additional Details
When in the Object Manager in Visual DBA I navigate to my table in question (say d1_17, which is sorted by ascending values of d1_17.xpid) xpid = '27245' is not there. When I query specifically in Visual SQL for d1_17.xpid = '27245' it outputs the row correctly.
They are connected to same database. Excel and Visual DBA are also in sync (both missing the same rows). The discrepancy arises when I query specifically d1_17.xpid = '27245' in Visual SQL and the row prints, and yet, when browsing in object manager, in d1_17 in Visual DBA the row with xpid = '27245' isn't there.
Every value in d1_17.xpid is non-null. Other columns may have null values, but every row is a patient and every patient has an xpid (patient ID).
While we are admins on the network for our database we unfortunately did not create it, our software team for our EHR GUI did that part as well.
(Please forgive the SQL Server test case - the problem is common to all SQL implementations because that of common semantics mandated by the SQL Standard.)

Even though you have used a LEFT OUTER JOIN, the semantics of SQL can convert this to an implied INNER JOIN if you improperly put constant-test conditions in a WHERE clause instead of the JOIN clause. The example below ilustrates this.

Preliminaries to create test data:

if object_id('Address') is not null drop table Address;
if object_id('Person') is not null drop table Person;
create table Person (
    ID          int identity    not null primary key clustered,
    Name        varchar(10)     not null unique nonclustered
);

create table Address (
    ID          int identity    not null primary key clustered,
    PersonID    int             not null references Person(ID),
    SequenceNo  int             not null,
    Address     varchar(40)     not null

    ,constraint NK unique nonclustered (PersonID,SequenceNo)
);

insert Person(Name) values
     ('Fred')
    ,('George')
    ,('Ron')
    ,('Ginny')
;

with data as(
    select * from(values
            ('Ron',   1,'Attic bedroom, The Burrows')
           ,('Ron',   2,'Junior Boys Dorm, Gryffindor House')
           ,('Fred',  1,'Blue bedroom, The Burrows')
           ,('Fred',  2,'Senior Boys Dorm, Gryffindor House')
           ,('George',1,'Green bedroom, The Burrows')
           ,('George',2,'Senior Boys Dorm, Gryffindor House')
           ,('Ginny', 1,'Pink bedroom, The Burrows')
    )data(PersonName,SequenceNo,Address)
)
insert Address(PersonID,SequenceNo,Address)
select 
    Person.ID,
    SequenceNo,
    Address
from data join Person on data.PersonName = Person.Name
;


Now these two queries

select *
from Person
left join Address on Address.PersonID = Person.ID
               where SequenceNo       = 2
;
select *
from Person
left join Address on Address.PersonID = Person.ID
                 and SequenceNo       = 2
;


respectively return

ID          Name       ID          PersonID    SequenceNo  Address
----------- ---------- ----------- ----------- ----------- ----------------------------------------
3           Ron        2           3           2           Junior Boys Dorm, Gryffindor House
1           Fred       4           1           2           Senior Boys Dorm, Gryffindor House
2           George     6           2           2           Senior Boys Dorm, Gryffindor House

ID          Name       ID          PersonID    SequenceNo  Address
----------- ---------- ----------- ----------- ----------- ----------------------------------------
1           Fred       4           1           2           Senior Boys Dorm, Gryffindor House
2           George     6           2           2           Senior Boys Dorm, Gryffindor House
3           Ron        2           3           2           Junior Boys Dorm, Gryffindor House
4           Ginny      NULL        NULL        NULL        NULL


Note how, despite the LEFT OUTER JOIN which one expects to ensure that all Person rows are returned, the placement of the condition SequenceNo = 2 in the WHERE clause instead of the JOIN clause coerces the join into an INNER JOIN; so that Ginny is dropped from the first result set.

This is a specific example of how, more generally, the occurrence of a NULL value in a field being tested violates intuition. One loses the Excluded Middle, so that when a predicate A may be NULL it is no longer tautologically true that A or NOT A will give you all rows; all rows with a NULL value for A will be silently dropped.