問題タブ [ingres]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - PHP 5.4 で Ingres に接続できません
xampp がインストールされた Windows XP があり、現在 ingres DB に接続するときに問題が発生しています。このエラーが表示されます。私のphp.iniを私のextの名前で編集します。私は php 5.4 を持っていますが、誰かがこの拡張子 php_ingres.dll を持っています。詳細情報が必要な場合はお知らせください。クライアントイングレスもインストールしました。
sql - 日付範囲内の最大値を選択してください
仕事:
- 以下の現在動作中のコードを追加/編集して、患者ごとに 1 つの行のみを返すようにします。
d1_10.xtransfer
(データ型 int) の最大値は、この行のd1_10.dstartdate <= glob_End_Date
.
警告:
StackOverflow とその姉妹サイトにも同様の質問があります。この問題の解決に成功したものはありません。
これは医療用 EHR データベースです。コードを共有できますが、結果に関する議論は一般的なもので、患者情報を除外する必要があります。
既存の Excel スプレッドシート内の SQL クエリを置き換えて、別のことを行います。Excel は、ODBC 接続を使用してデータベースから情報を取得します。私たちのデータベースは Ingres SQL を使用しており、一般的な SQL コードの種類のすべてではありませんがほとんどを受け入れます。コードの一部は通常、他の種類の SQL では機能しますが、Ingres と Excel の組み合わせでは機能しない可能性があります。スプレッドシートが機能し、結果が返されるようになりました。次は、このソフトウェアで機能する SQL コードを作成して修正することです。
これまで:
以下の現在動作しているコード (最大制限なし) を使用すると、ユーザーが選択した日付範囲とユーザーが選択したd1_10.xtransfer
すべての行が返されます。最新のものだけが必要です。つまり、日付範囲内の最大値、または日付範囲内の最大値(追加されるとカウントアップされるインデックス) を持つ患者の行です。d1_10.dstartdate
d1_10.xinstitute
d1_10.dstartdate
d1_10.xtransfer
現在作業中のコード:
Excel スプレッドシートから実行するコードで最も近いのは、WHERE 句に次の行を追加した場合です。
d1_10.xtransfer = (SELECT MAX(d1_10.xtransfer) FROM d1_10 GROUP BY xpid)
この追加行によりd1_10.xtransfer
、日付範囲内にある各患者から 1 行のみが返されます。ただしd1_10.xtransfer
、日付範囲より新しい行がある場合、それらは結果にまったく表示されません。
この行により、コードはMAX(d1_10.xtransfer)
日付制限を適用する前に各 xpid を取得します。私の論理では、代わりに後で実行することを望んでいますが、これよりも近づくように実行するコードを思いつくことができませんでした。
前もって感謝します。この改ページの下に追加情報を追加して、この質問を更新し続けます。
追加情報:
- PaulM ごとに:
はい、xpid
各患者に固有の患者 ID インデックス番号です。
WHERE 句の行を次のように追加/編集:"d1_10.xtransfer = (SELECT MAX(xtransfer) FROM d1_10 d1_10_b WHERE d1_10.xpid = d1_10_b.xpid AND d1_10_b.dstartdate <= '" & glob_End_Date & " 23:59:59') "
患者 Bob は、6 月 14 日と 17 日の両方に、残りの基準に適合する転院があります。
終了日が 6 月 17 日以降の日付範囲を入力すると、スプレッドシートはボブの 6 月 17 日の転勤の行を正しく返します。
終了日が 6 月 14、15、または 16 の日付範囲を入力すると、スプレッドシートは誤って Bob の行を返しません。
日付で制限する前に、まだ最大の xtransfer を使用しているようです。
- PaulM のコメントによると:
次のように、特定の患者のサブセレクトを実行しました。
入力:
SELECT MAX(xtransfer) FROM d1_10 d1_10_b WHERE d1_10_b.xpid = '2258' AND d1_10_b.dstartdate <= '20-apr-2016 23:59:59'
の値を出力しましたMAX(xtransfer) = '48233'
。これは正しいです。
そのため、Visual SQL を独自のステートメントとして実行しd1_10_b.xpid
、特定の患者に等しく設定すると、日付範囲から最大 xtransfer が正しく取得されます。(xtransfer
日付範囲外の最新のデータがありましたが、日付範囲内の最大値が正しく表示されていましたxtransfer
。)
次に、スプレッドシートの近くにあるこのまったく同じサブセレクトを実行してみました。つまり、同じ日付範囲 (変数として正しく正常に渡されている) を手動で選択しましたがd1_10.xpid = d1_10_b.xpid
、d1_10_b.xpid = '2258'
. これはうまくいきませんでした。サブクエリの日付範囲で制限する前に MAX() 関数を適用しているため、スプレッドシートにはこの患者の行が表示されませんでした。それでも、サブクエリは単独で実行すると機能します。
さらなる提案に感謝します。
load-balancing - Kubernetes でのイングレスで HTTP トラフィックをブロックする
https://github.com/kubernetes/contrib/blob/master/ingress/controllers/gce/README.md
私の ingress.yamlの例に従うと、次のようになります。
すべての http トラフィックをブロックすることを期待していますが、残念ながらこれは起こっていません! 私はまだ 443 と 80 の両方を得ています! 注釈に何か問題があるかどうかを取得するために何時間も費やしましたが、それを推測する方法が見つかりません!
sql - Ingres SQL の複数の集計
私は学年ごとに分かれた大きなテーブルを持っています。
sch_year_id は整数で、23 は 13/14 学年、24 は 14/15 などを表します。
そのため、通常、同じ sch_year_id を持つレコードが何千もありますが、子は異なります。
最も多くのレコードを含む最新 (つまり最大) の sch_year_id を知りたいのですが、その sch_year_id に対するレコードの数が 5000 を超えている場合のみです。
以下のように GROUP BY と HAVING を使用して、これのリストを取得できます
これは、学年が異なる約 10 件の結果を返しますが、この結果セットの max(sch_year_id) が必要です。SELECT で sch_year_id の周りに max 関数を追加しても、結果は何も変わりません。
以下のように、派生テーブルでそれを行うことができます
またはCTEを使用しますが、これなしでそれを行う方法があるに違いないと思いますか?
sql - SQLで空白の数で列を分割する方法は?
名前のセットを含む単一の列があります。1 つの列に複数の値が含まれるようにデータベースを設計したわけではありませんが、現状ではその情報を抽出する必要があります。
問題は、次の例のように、1 つのフィールドに複数の値があることです。
「ジャック・トム・ラリー・スタン・ケニー」
したがって、最初の 3 つは 1 つのグループであり、右端の他のものは別のグループです。(基本的に、列内でそれらを区切る唯一のものは、それらの間の特定の数の空白です。たとえば、50 文字としましょう。)
次のような2つの列を取得できるように、純粋なSQLでそれらを分割するにはどうすればよいですか:
column1 「ジャック・トム・ラリー」
column2 「スタン・ケニー」
sql - Ingres SQLは複数の行を1つの列に選択します
データベースは Ingres II 10.0.0 (su9.us5/132) 上にあります。そのため、複数のデータ行を 1 つの列にマージすることを非常に困難にする、stuff、coalesce などの多くの便利な機能が欠落しています。
これがありました:IngresでGROUP_CONCATする方法は?しかし、その解決策は、データがどのように構造化されているかでは不可能です。
基本的に、参照番号を持つテーブルがあり、各行に複数のステータスがある場合、その参照番号を複数回含めることができます。
例:
123 ABC
123 DEF
123 GHI
189 ABC
189 GHI
複数のテーブルから 1 つの select ステートメントにデータをプルしていますが、これは求めているデータの一部にすぎません。したがって、たとえば、「ABC」、「DEF」、「GHI」を 1 つの列に選択して、ステータスごとに重複した人の 3 つの行を作成したいと考えています。
私はまだ機能するオプションを見つけていません。
どんなアイデアでも大歓迎です。
ありがとう。
sql - テーブルに新しい行を挿入しますが、テーブルの別の行からデータをコピーします
たとえば、次の値を持つ ingres db 内にテーブルがあります
同じデータがコピーされた新しい行を作成したいが、「grd」値は以下のような新しい値に変更された
最適化されたSQLステートメントでこれを達成するにはどうすればよいですか?
windows - java.sql.SQLNonTransientConnectionException: 接続の確立中に通信エラーが発生しました
Ingres Database Workbranch を Ingres DB に接続しようとしていますが、このエラーが解決されました
Ingres JDBC ドライバーを使用しています URL は次のようになりますjdbc:ingres://internal_IP:ii7/DBName
私は何か見落としてますか?インターネットは解決策を提供しませんでした。どんな助けでも大歓迎