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

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

10
SQL Serverに存在する場合にのみ、外部キー制約を削除するにはどうすればよいですか?
次のコードを使用してテーブルが存在する場合、テーブルを削除できますが、制約を使用して同じことを行う方法がわかりません。 IF EXISTS(SELECT 1 FROM sys.objects WHERE OBJECT_ID = OBJECT_ID(N'TableName') AND type = (N'U')) DROP TABLE TableName go 次のコードを使用して制約も追加します。 ALTER TABLE [dbo].[TableName] WITH CHECK ADD CONSTRAINT [FK_TableName_TableName2] FOREIGN KEY([FK_Name]) REFERENCES [dbo].[TableName2] ([ID]) go

7
外部キーを持つテーブル列をNULLにすることはできますか?
他のテーブルへのID列がいくつかあるテーブルがあります。 外部キーにデータを入れた場合にのみ整合性を強制したい。後で更新してその列にデータを入力する場合は、制約もチェックする必要があります。 (これはデータベースサーバーに依存している可能性があります。MySQLとInnoDBテーブルタイプを使用しています) これは妥当な期待だと思いますが、間違っていた場合は訂正してください。


25
メールアドレスを主キーとして使用しますか?
自動インクリメントの数値と比較した場合、電子メールアドレスはプライマリの候補として不適切ですか? 私たちのウェブアプリケーションは、システムで一意である電子メールアドレスを必要とします。そこで、メールアドレスを主キーにしようと考えました。ただし、私の同僚は、文字列の比較は整数の比較よりも遅くなることを示唆しています。 電子メールを主キーとして使用しないのは正当な理由ですか? 使用していPostgreSQLます。

24
非常に大きなテーブルの正確な行数をカウントする最も速い方法は?
SELECT COUNT(*) FROM TABLE_NAMEテーブルに多数の行と多数の列があると遅くなると述べている記事を見つけました。 数十億行にもなるテーブルがあります(約15列です)。取得するためのより良い方法はありEXACTテーブルの行数のカウントは? 回答する前に、次の点を考慮してください。 データベースベンダーに依存しないソリューションを探しています。MySQL、Oracle、MS SQL Serverをカバーしていれば問題ありません。しかし、データベースベンダーに依存しないソリューションが本当にない場合は、データベースベンダーごとに異なるソリューションを用意します。 他の外部ツールを使用してこれを行うことはできません。私は主にSQLベースのソリューションを探しています。 データベース設計をこれ以上正規化できません。それはすでに3NFにあり、さらにその周りに多くのコードがすでに書かれています。
234 sql  database 

5
SQLの大文字と小文字を区別する文字列の比較
どのように文字列を比較して、各文字列の大文字小文字が等しい場合にのみ比較が真になるようにしますか。例えば: Select * from a_table where attribute = 'k' ...属性「K」の行を返します。私はこの行動を望んでいません。
234 sql  sql-server 

23
PostgreSQLでインデックス付きの列をリストする
PostgreSQLでインデックスが存在する列を取得したいと思います。 MySQL SHOW INDEXES FOR tableでは、Column_name列を使用して確認できます。 mysql> show indexes from foos; +-------+------------+---------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+ | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | +-------+------------+---------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+ | foos | 0 | PRIMARY | 1 | id | A …
233 sql  postgresql  indexing 


30
最も一般的なSQLアンチパターンは何ですか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。私たちは回答が事実、参考文献、または専門知識によってサポートされることを期待しますが、この質問はおそらく議論、議論、投票、または拡張された議論を誘います。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 8年前に閉鎖。 リレーショナルデータベースを扱う私たち全員が、SQLが異なることを学びました(または学び始めました)。望ましい結果を引き出して効率的に行うには、不慣れなパラダイムを習得し、最も身近なプログラミングパターンの一部がここでは機能しないことを発見することを部分的に特徴とする退屈なプロセスを伴います。あなたが見た(またはあなた自身が犯した)一般的なアンチパターンは何ですか?
232 sql  anti-patterns 

12
postgresの自動インクリメントカウンターをリセットする
テーブルの自動インクリメントフィールドをある値に強制したいので、これを試してみました: ALTER TABLE product AUTO_INCREMENT = 1453 そして ALTER SEQUENCE product RESTART WITH 1453; ERROR: relation "your_sequence_name" does not exist 私はpostgresに不慣れです:( フィールドを持つテーブルproductがIdありnameます


18
SQL Serverでの重複行の検索
組織のSQL Serverデータベースがあり、重複する行が多数あります。selectステートメントを実行して、これらすべてと重複の量を取得するだけでなく、各組織に関連付けられているIDも返します。 次のようなステートメント: SELECT orgName, COUNT(*) AS dupes FROM organizations GROUP BY orgName HAVING (COUNT(*) > 1) のようなものを返します orgName | dupes ABC Corp | 7 Foo Federation | 5 Widget Company | 2 しかし、それらのIDも取得したいと思います。これを行う方法はありますか?たぶん orgName | dupeCount | id ABC Corp | 1 | 34 ABC Corp | 2 | …

9
SELECT * FROM X WHERE id IN(…)with Dapper ORM
IN句の値のリストがビジネスロジックからのものである場合、Dapper ORMを使用してIN句でクエリを作成する最良の方法は何ですか?たとえば、クエリがあるとします。 SELECT * FROM SomeTable WHERE id IN (commaSeparatedListOfIDs) commaSeparatedListOfIDsビジネスロジックからに渡されると、それは、任意の型を指定できますIEnumerable(of Integer)。この場合、クエリをどのように作成しますか?これまでに行った基本的な方法は文字列の連結である必要がありますか、それとも、知らない種類の高度なパラメーターマッピング手法がありますか?
231 .net  sql  dapper 

9
共通テーブル式(CTE)を使用する場合
共通テーブル式について読み始めたが、それらを使用する必要があるユースケースを考えることができない。派生テーブルでも同じことができるので、冗長であると思われます。足りないものやよくわからないものはありますか?CTEのケースを作成するために、通常の選択、派生、または一時テーブルクエリの制限の簡単な例を誰かに教えてもらえますか?簡単な例をいただければ幸いです。

6
MySQL、NULLまたは空の文字列を挿入する方が良いですか?
さまざまな分野のウェブサイトにフォームがあります。一部のフィールドはオプションですが、一部は必須です。私のDBには、これらすべての値を保持するテーブルがあります。ユーザーがデータを入力しなかったDB列にNULL値または空の文字列を挿入することをお勧めしますか?
230 mysql  sql  sql-null 

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