I think I'll just make a nightly process run that drops and then recreates the 
table, unless someone has a workable idea of how to make this view query-able.

Thanks!

Jim McNeely 

On Aug 23, 2012, at 2:06 PM, James W. McNeely wrote:

> This didn't help, but good try!
> 
> Jim McNeely 
> 
> On Aug 23, 2012, at 12:27 PM, Martin Gainty wrote:
> 
>> 
>> If memory serves predicates convert strings to column-data-type (in your 
>> case DATE) this *should* help
>> WHERE dateexam = STR_TO_DATE('2012-08-13','%Y-%m-%d')
>> does this help?
>> Martin 
>> ______________________________________________ 
>> Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
>> 
>> Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene 
>> Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte 
>> Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht 
>> dient lediglich dem Austausch von Informationen und entfaltet keine 
>> rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von 
>> E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
>> Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le 
>> destinataire prévu, nous te demandons avec bonté que pour satisfaire 
>> informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie 
>> de ceci est interdite. Ce message sert à l'information seulement et n'aura 
>> pas n'importe quel effet légalement obligatoire. Étant donné que les email 
>> peuvent facilement être sujets à la manipulation, nous ne pouvons accepter 
>> aucune responsabilité pour le contenu fourni.
>> 
>> 
>>> From: j...@newcenturydata.com
>>> Subject: view query is slow
>>> Date: Thu, 23 Aug 2012 11:30:17 -0700
>>> To: mysql@lists.mysql.com
>>> 
>>> I am working on a view based on this query:
>>> 
>>> =======================================
>>> SELECT
>>> -- Patient Info
>>> p.IdPatient,
>>> p.IdLastword MRN, 
>>> p.NameLast, 
>>> p.NameFirst, 
>>> p.Addr1, 
>>> p.Addr2, 
>>> p.AddrCity, 
>>> p.AddrState, 
>>> p.AddrZip,
>>> p.Gender, 
>>> p.DateOfBirth,
>>> -- Provider Info
>>> af.IdAffil,
>>> af.PractName, 
>>> af.OfficeName,
>>> -- Exam Info
>>> e.IdExam,
>>> e.dateexam, 
>>> a.WorkArea dept, 
>>> a.Room location, 
>>> e.ProcModeCode,
>>> e.ProcName,
>>> e.IdRefSite,
>>> ec.IdCPT,
>>> e.zzk exam_zzk,
>>> ec.zzk examcpt_zzk
>>> FROM patient_ p
>>> LEFT JOIN exams e ON e.IdPatient = p.IdPatient
>>> LEFT JOIN Examcpt_ ec ON (e.IdExam = ec.IdExam AND '1' = Quantity)
>>> LEFT JOIN Copy_ c ON CONCAT(e.IdAppt , '0') = c.IdApptType
>>> LEFT JOIN Appt_ a ON e.IdAppt = a.IdAppt
>>> LEFT JOIN Affil_ af ON c.IdPractAffil = af.IdAffil
>>> WHERE 
>>> p.AddrState = 'WA'
>>> AND e.statusnumber = '4'
>>> AND e.IdRefSite <> 'S50'
>>> AND e.IdRefSite <> 'S51' 
>>> AND e.IdREfSite <> 'S63' 
>>> AND p.DateOfBirth < DATE_ADD(CURDATE(), INTERVAL '-2' MONTH) 
>>> AND a.zzk IS NOT NULL
>>> ============================================
>>> 
>>> If I run this query itself (not in the view), and add this:
>>> 
>>> AND e.dateexam = '2012-08-13'
>>> 
>>> it runs like lightning, super fast. But if I run the query against the 
>>> view, for example "SELECT * FROM exam_view WHERE dateexam = '2012-08-13'
>>> 
>>> It is so glacially slow that I end up having to kill the query. What is 
>>> going on, and how can I fix this?
>>> 
>>> Jim McNeely
>>> Northwest Radiologists
>>> Senior Database Programmer
>>> 360-788-9022 desk
>>> 360-303-3332 mobile 
>>> -- 
>>> MySQL General Mailing List
>>> For list archives: http://lists.mysql.com/mysql
>>> To unsubscribe:    http://lists.mysql.com/mysql
>>> 
>>                                        
> 
> 
> --
> MySQL General Mailing List
> For list archives: http://lists.mysql.com/mysql
> To unsubscribe:    http://lists.mysql.com/mysql
> 


--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/mysql

Reply via email to