タグ付けされた質問 「sql」

構造化照会言語(SQL)は、データベースを照会するための言語です。質問には、コード例、テーブル構造、サンプルデータ、使用するDBMS実装(MySQL、PostgreSQL、Oracle、MS SQL Server、IBM DB2など)のタグを含める必要があります。質問が特定のDBMSにのみ関連している場合(特定の拡張機能を使用)、代わりにそのDBMSのタグを使用してください。SQLでタグ付けされた質問への回答には、ISO / IEC標準SQLを使用する必要があります。

11
データベース内のすべてのテーブルを1つの照合に変換するにはどうすればよいですか?
エラーが発生します: 操作 '=' "の照合(utf8_general_ci、IMPLICIT)と(utf8_unicode_ci、IMPLICIT)の不正な組み合わせ 両方のテーブルを手動でに変更しようとしましたutf8_general_ci,IMPLICITが、それでもエラーが発生します。 すべてのテーブルをに変換して実行する方法はありutf8_general_ci,IMPLICITますか?
82 mysql  sql 

3
単純なPostgreSQL挿入を機能させることができません
postgresテーブルに単純な挿入を行おうとしていますが、挿入しようとしている値が列名として解釈されているというエラーが発生します INSERT INTO "imageTagBusinessMainCategory" (id, businessMainCategory) VALUES (DEFAULT, "auto dealer") ここで、idは主キーであり、nullではなく自動インクリメントするように設定されています。これらは、phpPgAdminでテーブルを設定するときにチェックしたボックスです。 ただし、このエラーが発生します。 ERROR: ERROR: column "auto dealer" does not exist Query = INSERT INTO "imageTagBusinessMainCategory" (id, businessMainCategory) VALUES (DEFAULT, "auto dealer") ここで読んだように、テーブル名を二重引用符で囲んでいます。 そしてDEFAULT、私がここで読んだように、IDを自動インクリメントするために使用されます。 何か案は?ありがとう!
82 sql  postgresql 

3
MySQLでインデックスの名前を変更するにはどうすればよいですか
インデックスの名前を変更したいのですが。表の変更に関するドキュメントを見てきましたが、単にインデックスの名前を変更するための構文を理解できません。MySQL GUIを介して実行すると、インデックスが削除され、新しいインデックスが作成されます。これは機能しますが、インデックスの名前を変更するためだけにインデックス全体を再構築することは避けたいと思います。 [追加情報] 表の変更のドキュメントには、 テーブルメタデータのみを変更し、テーブルデータは変更しない変更は、テーブルの.frmファイルを変更し、テーブルの内容に触れないことですぐに行うことができます。次の変更は、この方法で行うことができる高速な変更です。 * Renaming a column or index. ただし、(テストデータベース上の).frmファイルを編集してサーバーを再起動し、インデックスの名前を変更しようとすると、列を一覧表示しようとしたとき、および実行しようとしたときに、UIに「列をフェッチできませんでした」と表示されるようになりました。クエリを実行すると、「不明なテーブルエンジン ''」というエラーが返されます。.frmファイルには多くのバイナリコンテンツが含まれています。バイナリ情報を編集するための優れたツールはありますか?
82 sql  mysql  indexing 

8
SQL'like 'vs' = 'パフォーマンス
この質問は 私が疑問に思っていることを回避しますが、答えは正確にそれに対処していません。 一般に、ワイルドカードを使用する場合、「=」は「like」よりも高速であるように見えます。これは一般通念のようです。ただし、限られた数の異なる固定のハードコードされたvarchar識別子を含む列があり、それらの1つに一致するすべての行を選択するとします。 select * from table where value like 'abc%' そして select * from table where value = 'abcdefghijklmn' 'Like'は、最初の3文字をテストして一致を見つけるだけでよいのに対し、 '='は文字列全体を比較する必要があります。この場合、「like」には利点があり、他のすべての条件は同じであるように思われます。 これは一般的な学術的な質問として意図されているため、どのDBでも問題ありませんが、SQL Server2005を使用して発生しました。
82 sql  performance 

7
MIN集計関数をBITフィールドに適用する
次のクエリを書きたい: SELECT ..., MIN(SomeBitField), ... FROM ... WHERE ... GROUP BY ... 問題は、SQL Serverがそれを好まないことですOperand data type bit is invalid for min operator。ビットフィールドの最小値を計算したい場合、エラーが返されます。 次の回避策を使用できます。 SELECT ..., CAST(MIN(CAST(SomeBitField AS INT)) AS BIT), ... FROM ... WHERE ... GROUP BY ... しかし、もっとエレガントなものはありますか?(たとえば、私が知らないand、フィールド内のビット値の論理を評価する集計関数がある場合があります。)
82 sql  sql-server  tsql 



1
MySQL:NULLを0に型キャストする
次の表(たとえば、いくつかの内部結合ステートメントの結果)を想定します。 id | column_1 | column_2 ------------------------ 1 | 1 | 2 | 2 | 2 3 | | 3 たとえば、次のステートメントから取得できます。 select a.id, t1.column_1, t2.column_2 from a left join t1 on a.id = t1.id left join t2 on a.id = t2.id ここで、t1.column_1とt2.column_2を次のように合計したい場合 select a.id, t1.column_1, t2.column_2, (t1.column_1 + t2.column_2) as …
82 sql  mysql  casting 

4
sqlalchemyは複数の列をフィルタリングします
2つの列を組み合わせてフィルターを適用するにはどうすればよいですか?たとえば、「名」列と「姓」列の両方を同時に検索したいとします。1つの列のみを検索する場合の方法は次のとおりです。 query = meta.Session.query(User).filter(User.firstname.like(searchVar))

19
複数の列から最小値を選択するための最良の方法は何ですか?
SQL Server2005の次の表を考えます。 ID Col1 Col2 Col3 -- ---- ---- ---- 1 3 34 76 2 32 976 24 3 7 235 3 4 245 1 792 次の結果を生成するクエリを作成するための最良の方法は何ですか(つまり、最終列を生成するクエリ-各行のCol1、Col2、およびCol 3からの最小値を含む列)? ID Col1 Col2 Col3 TheMin -- ---- ---- ---- ------ 1 3 34 76 3 2 32 976 24 24 3 7 …

7
T-SQLのブール値「NOT」が「ビット」データ型で機能していませんか?
単一のブールNOT操作を実行しようとすると、MS SQL Server2005では次のブロックが機能しないようです。 DECLARE @MyBoolean bit; SET @MyBoolean = 0; SET @MyBoolean = NOT @MyBoolean; SELECT @MyBoolean; 代わりに、私はより成功しています DECLARE @MyBoolean bit; SET @MyBoolean = 0; SET @MyBoolean = 1 - @MyBoolean; SELECT @MyBoolean; それでも、これは否定のように単純なものを表現するための少しねじれた方法に見えます。 私は何かが足りないのですか?

1
デフォルトの制約を追加するためのコマンド
ストレートT-SQLを使用してデフォルトの制約を追加するには、少なくとも2つの方法があるようです。以下の2つの違いは、2番目のメソッドが制約の名前を具体的に作成し、最初のメソッドがSQL Serverによって生成された名前を持っていることだけです。 ALTER TABLE [Common].[PropertySetting] ADD DEFAULT ((1)) FOR [Active]; ALTER TABLE [Common].[PropertySetting] ADD CONSTRAINT [DF_PropertySetting_Active) DEFAULT ((1)) FOR [Active];

1
Oracleでblobサイズを見つけるためのdbms_lob.getlength()とlength()
私はから同じ結果を得ています select length(column_name) from table なので select dbms_lob.getlength(column_name) from table ただし、この質問への回答は、の 使用を支持しているようですdbms_lob.getlength()。 使用するメリットはありますdbms_lob.getlength()か? それが答えを変えるなら、私はすべてのブロブが.bmpイメージであることを知っています(これまでブロブで働いたことはありません)。
81 sql  oracle  blob 


4
デバッグ中のSSISの変数の監視
SSISにプロジェクトがあり、その結果を変数に送信するSQL実行タスクを追加しました。値を確認したかったのは、実際の整数ではなく結果セットオブジェクトとして書き出そうとするのではないかと心配したためです(この場合はCOUNTを返します)。 私の最初の考えは、デバッグモードで実行し、グローバル変数をウォッチウィンドウに追加することでした。残念ながら、[ウォッチ]ウィンドウを右クリックすると、[変数の追加]オプションがグレー表示されます。ここで何が欠けていますか? 変数が正しく設定されていることを確認できたので、値を使用してMsgBoxを実行するためのスクリプトを挿入するようなメソッドには興味がありません。将来の参考のために、デバッグモードで変数を監視できるようにしたいと思います。それについて何らかの制約がある場合は、誰かが知っていれば、そのすべての内容と理由を知りたいと思います。 このヘルプはひどく不十分であり、私が見つけることができるすべての「チュートリアル」は、「変数をウォッチウィンドウに追加してデバッグする」と言っているだけで、問題が発生することはないはずです。 洞察力をありがとう!

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.