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

MySQLは、構造化照会言語(SQL)を使用する無料のオープンソースのリレーショナルデータベース管理システム(RDBMS)です。SQL Server、SQLiteなど、他のDBにはこのタグを使用しないでください。これらはすべて、独自のSQL方言を使用してデータを管理する異なるDBです。

6
単一クエリ内の複数の選択ステートメント
私はphp(mysql)でレポートを生成しています、 例: `select count(id) as tot_user from user_table select count(id) as tot_cat from cat_table select count(id) as tot_course from course_table` このように私は12のテーブルを持っています。 単一のクエリで作成できますか?私がやったら?プロセスが遅くなりますか?
101 mysql 

11
SQLAlchemy式から生のコンパイル済みSQLクエリを取得するにはどうすればよいですか?
SQLAlchemyクエリオブジェクトがあり、すべてのパラメーターがバインドされた(たとえば%s、ステートメントコンパイラーまたはMySQLdbダイアレクトエンジンによってバインドされるのを待っている変数がないなど)、コンパイルされたSQLステートメントのテキストを取得します。 str()クエリを呼び出すと、次のようなことがわかります。 SELECT id WHERE date_added <= %s AND date_added >= %s ORDER BY count DESC query._paramsを調べてみましたが、空の辞書です。私はこのsqlalchemy.ext.compiler.compilesデコレータの例を使用して独自のコンパイラを作成しましたが、そこにあるステートメントでさえ、%sデータが必要な場所にまだあります。 クエリを作成するためにパラメーターが混在するタイミングがよくわかりません。クエリオブジェクトを調べるとき、それらは常に空のディクショナリです(ただし、クエリは正常に実行され、エコーロギングをオンにするとエンジンが出力します)。 SQLAlchemyは、基になるクエリを知りたくないというメッセージを受け取り始めています。これは、さまざまなDB-APIのすべての式APIのインターフェイスの一般的な性質を破壊するためです。クエリが何であるかがわかる前にクエリが実行されてもかまいません。ただ知りたいだけです!
101 python  sql  mysql  sqlalchemy 

2
MySQLの既存のフィールドに文字列を追加するにはどうすればよいですか?
すべてのレコードのコードを現在のコードに更新したい_標準アイデアはありますか? たとえば、コードがapple_1とapple_2の場合、apple_1_standardとapple_2_standardにする必要があります 前: id code ------------ 1 apple_1 1 apple_2 疑似クエリ: update categories set code = code + "_standard" where id = 1; 期待される結果: id code ---------------------- 1 apple_1_standard 1 apple_2_standard
101 sql  mysql  string 

8
MySQLが昨日の日付を選択
日付が昨日である値を表示およびカウントするにはどうすればよいですか?使ったtime()はデータベースに日付を挿入していました。例: URL: google.com youtube.com google.com youtube.com test.com youtube.com DateVisited: 1313668492 1313668540 1313668571 13154314 テーブルに存在する複数のURLの数と、昨日アクセスされたそのURLの数を表示します。結果の例: LINK | timesExisted | timesVisitedYesterday Google.com | 2 | 2 youtube.com| 3 | 3 昨日の日付を取得するアイデアはすでにありますが、昨日のURLの存在回数をカウントしたり、テーブルにURLが存在した回数をカウントしたりするアイデアはありません。
101 mysql 

8
MySQLは最新の行のみに参加しますか?
customer_id、電子メール、および参照を格納する表customerがあります。顧客に加えられた変更の履歴レコードを格納する追加のテーブルcustomer_dataがあります。つまり、変更があった場合、新しい行が挿入されます。 テーブルに顧客情報を表示するには、2つのテーブルを結合する必要がありますが、customer_dataからの最新の行のみをcustomerテーブルに結合する必要があります。 クエリがページ分割されるという点で少し複雑になるため、制限とオフセットがあります。 MySQLでこれを行うにはどうすればよいですか?DISTINCTをどこかに配置したいと思います... 当日のクエリは次のようになります SELECT *, CONCAT(title,' ',forename,' ',surname) AS name FROM customer c INNER JOIN customer_data d on c.customer_id=d.customer_id WHERE name LIKE '%Smith%' LIMIT 10, 20 さらに、このようにCONCATをLIKEと併用できると思いますか? (INNER JOINは、使用するJOINのタイプが間違っている可能性があることを理解しています。実際には、さまざまなJOINの違いは何なのかわかりません。これから調べます!)
101 mysql  sql  join 

5
Bツリーとハッシュテーブル
MySQLでは、インデックスタイプはbツリーであり、bツリー内の要素へのアクセスは対数償却時間O(log(n))です。 一方、ハッシュテーブルの要素へのアクセスはにありO(1)ます。 データベース内のデータにアクセスするために、Bツリーの代わりにハッシュテーブルが使用されないのはなぜですか?

13
SQLの結果を多対多の関係にフィルターする方法
私はテーブルを持っていると仮定するとstudent、clubとstudent_club: student { id name } club { id name } student_club { student_id club_id } サッカー(30)クラブと野球(50)クラブの両方ですべての生徒を見つける方法を知りたいです。 このクエリは機能しませんが、これまでのところ最も近いものです。 SELECT student.* FROM student INNER JOIN student_club sc ON student.id = sc.student_id LEFT JOIN club c ON c.id = sc.club_id WHERE c.id = 30 AND c.id = 50

2
ApacheがMAMP Proで起動しない
Apacheが起動せず、エラーがスローされます。 または、Apacheを起動できませんでした。詳細については、ログファイルを確認してください。 dyld:シンボルが見つかりません:_iconv参照元:/usr/lib/libmecabra.dylib予期される場所:/Applications/MAMP/Library/lib/libiconv.2.dylib in /usr/lib/libmecabra.dylib / Applications / MAMP / Library / bin / apachectl:行80:2799トレース/ BPTトラップ:5 $ HTTPD "$ これは複数のポートでも同じです。推奨されるMAMPポートと通常のApacheポート。 MySQLは完全に正常に起動します。 助言がありますか?

8
新しい列をMYSQLテーブルに追加する方法は?
PHPを使用してMYSQLテーブルに新しい列を追加しようとしています。新しい列が作成されるようにテーブルを変更する方法がわかりません。私の評価表には次のものがあります: assessmentid | q1 | q2 | q3 | q4 | q5 テキストボックスのあるページがあり、 q6してボタンを押すと、テーブルが次のように更新されます。 assessmentid | q1 | q2 | q3 | q4 | q5 | q6 私のコード: <?php include 'core/init.php'; include 'core/admininit.php'; include 'includes/overall/overall_header.php'; adminprotect_page(); include 'includes/adminmenu.php'; ?> <?php mysql_query("ALTER TABLE `assessment` ADD newq INT(1) NOT NULL AFTER `q10`"); …
100 php  mysql  add  alter 

8
MySQLを使用して、テーブル内のレコードインデックスを含む列をどのように生成できますか?
クエリから実際の行番号を取得する方法はありますか? scoreというフィールドでleague_girlというテーブルを注文できるようにしたいのですが、そして、ユーザー名とそのユーザー名の実際の行位置を返します。 ユーザーをランク付けしたいので、特定のユーザーがどこにいるかがわかります。ジョーは200のうち100位です。 User Score Row Joe 100 1 Bob 50 2 Bill 10 3 ここでいくつかの解決策を見てきましたが、それらのほとんどを試しましたが、実際には行番号を返しません。 私はこれを試しました: SELECT position, username, score FROM (SELECT @row := @row + 1 AS position, username, score FROM league_girl GROUP BY username ORDER BY score DESC) 派生した ...しかし、それは行の位置を返さないようです。 何か案は?
100 mysql  indexing 


7
すべてのテキストベースのフィールドに汎用のvarchar(255)を使用することには欠点がありますか?
私が持っているcontactsようなフィールドを含むテーブルをpostcode、first name、last name、town、country、phone numberなど、のように定義されているすべてのそれらのVARCHAR(255)も、これらの分野のどれもが今までに近い255個の文字を有することに来ないだろうけれども。(不思議に思っているのは、Ruby on RailsのマイグレーションVARCHAR(255)がデフォルトでStringフィールドをマッピングし、私がそれをオーバーライドすることを決してしなかったからです)。 VARCHARのみ(フィールド長と共に)フィールドの実際の文字の数を格納するため、たとえば、使用する任意の明確な利点(性能又はその他)があるVARCHAR(16)上にVARCHAR(255)? さらに、これらのフィールドのほとんどにはインデックスがあります。フィールドのVARCHARサイズが大きくなると、インデックスのサイズやパフォーマンスに影響がありますか? 参考までに、MySQL 5を使用しています。
100 mysql  sql 

7
MySQLで空のフィールドを確認する
私は、特定の基準でユーザーをチェックするクエリを作成しました。 私たちのサイトでは、ユーザーがメールアドレスを持っていても持っていなくてもかまいません。 $aUsers=$this->readToArray(' SELECT `userID` FROM `users` WHERE `userID` IN(SELECT `userID` FROM `users_indvSettings` WHERE `indvSettingID`=5 AND `optionID`='.$time.') AND `email`!="" '); これは、SQLで空のフィールドを確認する最良の方法ですか?私は「IS NOT NULL」を試したところ、メールアドレスがなくてもユーザーレコードが返されました。 上記のクエリは機能しますが、好奇心から、私はそれを正しい方法で行っているのかと思いました。
100 php  sql  mysql  null 

6
1つのステートメントでJavaで実行される複数のクエリ
こんにちは私は、JDBCを使用してこのような何かを実行することは可能ですか? "SELECT FROM * TABLE;INSERT INTO TABLE;" SQLクエリ文字列を分割してステートメントを2回実行することで可能であることに気づいていますが、これには1回限りのアプローチがあるのではないかと思っていました。 String url = "jdbc:mysql://localhost:3306/"; String dbName = "databaseinjection"; String driver = "com.mysql.jdbc.Driver"; String sqlUsername = "root"; String sqlPassword = "abc"; Class.forName(driver).newInstance(); connection = DriverManager.getConnection(url+dbName, sqlUsername, sqlPassword);
100 java  mysql  sql  jdbc 


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