私は少し立ち往生しています。現在の SQL は手元にありませんが、明確にしようと思います。コース番号とその成績とともに学生 ID のテーブルがあるとします。A に等しい成績のない学生のみを返したい。返されません。
この問題にどのように取り組むことができますか? 私はSQLにかなり慣れていません。ありがとう
編集:さて、実際の SQL を取得したので、ひどい例えをやめることができます。
SELECT ALL
ITEMS.QTY_ONHAND AS QTY_ONHAND,
ITEMS.ITEM_ID AS ITEM_ID_I0,
MEDORDER.MO_STAT AS MOMO_STAT,
UPPER(ITEMS.ITEM_ID) AS ITEM_ID_IC,
ITEMS.RX_DISP AS RX_DISP,
OMNIS.OMNI_ID AS OMNI_ID,
MEDORDER.ITEM_ID AS MOITEM_ID
FROM ITEMS ITEMS,
MEDORDER MEDORDER,
OMNIS OMNIS,
"PATIENTS" PATIENTS
WHERE (ITEMS.OMNI_STID = OMNIS.OMNI_STID) AND
(PATIENTS.PAT_ID = MEDORDER.PAT_ID) AND
(OMNIS.AREA = PATIENTS.AREA) AND (UPPER(ITEMS.ITEM_NAME) LIKE '%Doxycycline%'
AND MEDORDER.ITEM_ID = UPPER(ITEMS.ITEM_ID)
AND MEDORDER.MO_STAT='A')
ORDER BY ITEMS.QTY_ONHAND DESC, OMNIS.OMNI_ID, MEDORDER.ITEM_ID
ここにあるのは場所、omni_id です。私のクエリは、この item_id を持つすべての omni_id を探しています。これにより、同じ item_id の複数の medorder に対応する各 omni_id の複数の結果が返されます。私がやりたいことは、「A」に等しい medorder.mo_stat の結果が 0 である omni_ids のみを返すことです。たとえば、omni_id 3W には 3 つの戻り値があり、medorder_mo_stat は A、C、および C に等しくなります。また、medorder.mo_stats が C、C、C の 4S もあります。 「A」の medorder.mo_stats はありません。
悪い説明で申し訳ありません..現在、いくつかのプロジェクトをマルチタスクしていますが、SQL-fu はあまり強力ではありません。探しているものを取得するために以下のソリューションを実装する方法がわかりません。
前もって感謝します