回答数
気になる
-
SSHを使ったmysqlのエクスポート方法
SSHを使ったmysqlのエクスポート方法を教えてください LinuxコマンドもMysqlも初心者ですが、最近SSHを使ってレンタルサーバーに接続をしていろいろと試してみています。 以下を試してみましたが、エラーが出てでエキスポートできませんでした。 1. $mysql -h サーバー名 -u ユーザ名 -p 2. mysqlのパスワードを入力してmysqlにログイン 3.mysql> mysqldump -u サーバー名 -p データベース名 > testdump.sql; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mysqldump -u サーバー名 -p データベース名 > testdump.sql' at line 1 というエラーができてエクスポートできません。 mysql> mysqldump --user=ユーザ名 --password=パスワード名 データベース名 < testdump.sql も試してみましたができませんでした。 以上のものは全てweb上で見つけたコマンドです。 よろしくお願いいたします。
質問日時: 2013/04/27 01:55 質問者: blue_camino
ベストアンサー
2
0
-
集計を行うSQLについて
以下の2テーブルの構成で、from_uid毎のto_uidへの在庫移動個数(val)を集計したいと考えています。 ユーザテーブル(user):uid(int), name(string) 在庫移動管理テーブル(zaiko):id(int), from_uid(int), to_uid(int), val(int) たとえば、それぞれ以下のようなレコードがあった場合、 <user> uid, name 1 aaa 2 bbb 3 ccc <zaiko> id, from_uid, to_uid, val 1 1 2 3 2 1 2 5 3 2 1 1 4 3 1 4 結果として、以下を得たいと考えています。 uid=1で検索した場合 to_uid, val 1 0 2 7 3 -4 uid=2で検索した場合 1 -7 2 0 3 0 uid=3で検索した場合 1 4 2 0 3 0 (イメージとしては、対戦表?の以下のような表を一行ずつ取得する様な感じです。) ___1__2__3 1__0__7_-4 2_-7__0__0 3__4__0__0 上記のような結果を得たい場合、どのようなSQLを書けばよいのでしょうか。 内容について、わかりづらい点等がありましたらご指摘ください。
質問日時: 2013/04/25 23:47 質問者: nmtkn
解決済
5
0
-
ズブの素人です。mysqlについて教えてください。
ズブの素人です。 わけあって素人である私がssh接続でサーバーをいじらねばならず、 データを直接書くことの恐さだけは知っているため、非常にビクビクしています。 教えてくれる人もおらず、大変困っております; どうしてこんなことになってしまったか、それが一番の問題なんですが、 直下の問題に対応するため、何卒知恵を頂戴いただけますと幸いです。 本当に素人なので稚拙な質問になってしまうと思いますが、 何卒教えていただけますと幸いです。 (mysqlに触るのも、SSHログインするのも人生初です) ■やりたいこと 『_utf8』というデータベースの中に『blog』のテーブルがあり、その中にブログがたくさん入っています。 ブログには作成者の項目が紐づいており、また、公開/非公開を決めるフラグ(0で公開、1で非公開)がついています。 今とある作成者(仮にtanaka)が書いたブログの中で、 2013/1/1までに書かれたブログを非公開にしたい(非公開フラグを1にしたい)です。 ■自力で調べたところまで 自分で調べた結果が下記のmysqlなのですが、 フラグを1にする、UPDATEの文章と 範囲を指定する、SELECTの文章の紐付けが 全く自身がありません。。。 ========= UPDATE `blogdb_utf8`.`blog` SET `blog_trash` = '1' SELECT * FROM `blog` WHERE `user_id` LIKE 'tanaka' AND `send_time` <= '2013-01-01 00:00:00' ========= 正直絶対どこか間違っているという 逆の自信だけございます。 ■さらに御聞きしたいこと teratermからsshログインというものを人生初しました。 ログインしたあと、ここからどこにcdして、上記の実行文を入れたら良いかがわかりません。。。 おそらく非常に初心者な質問をしているのだろうと自覚しておりますが、 何卒よろしく御願い致します
質問日時: 2013/04/23 16:50 質問者: ookihiroyuki
解決済
2
0
-
大きなmysqlファイルのエクスポート方法
コマンドラインが使えない共有レンタルサーバーを使用しております。 大きなmysqlファイルでもインポートできるbigdumpというものを見つけましたが、こちらはインポート用のみのようです。 http://www.ozerov.de/bigdump/ 現在、レンタルサーバー上のmysqlが大きくなり過ぎて一括ではエクスポートもできなくなっております。 そこで質問なのですが、テーブルを分割してエクスポートする以外に、大きなmysqlでもエクスポートできる何かbigdumpのようなものは存在するのでしょうか? よろしくお願いいたします。
質問日時: 2013/04/22 23:07 質問者: blue_camino
解決済
1
0
-
MySQL 可変テーブルの集計方法
今現在、PHP MySQLにてDB&簡単なCMSを作成中です。 仕入テーブル(id, date_y, date_m, id_cost, price, etc...)と勘定項目テーブル(id_cost, name_cost)をid_costをキーにして連結し、月々の勘定項目ごとの集計画面を作成したいのです。 SELECT 仕入テーブル.date_y, 仕入テーブル.date_m, 仕入テーブル.id_direct_cost, 勘定項目テーブル.name_cost, SUM(仕入テーブル.price) AS sumcost FROM 仕入テーブル NATURAL JOIN 勘定項目テーブル WHERE 仕入テーブル.date_y="'.$y.'" AND 仕入テーブル.date_m="'.$m.'" AND 仕入テーブル.typecost="direct" AND 仕入テーブル.id_direct_cost=勘定項目テーブル.id_cost ※$y, $mは集計画面で選択された年月です。 とすると、月々の合計が抽出され、勘定項目ごとの集計ができません。 当方、半年くらい学校にてPHP MySQLを習ったのですが、まだまだ未熟者のため解決できません。 お力をお貸しいただけますと大変ありがたく存じます。 どうぞよろしくお願い致します。
質問日時: 2013/04/22 20:54 質問者: ayk-ant
ベストアンサー
1
0
-
データベースのインポートができません(MySQL)
●質問の主旨 下記のサイトを見ながら、データベースのテーブルを インポートしようとしていますが、エラーが出ます。 この場合、phpmyadminのどこを確認すればよいでしょうか? ご存知の方、ご教示願います。 http://www.dbonline.jp/phpmyadmin/export-import/index3.html ●開発環境 windows8 xammp1.8.1 ●エラーの内容(添付画像) エラー 実行した SQL: -- -- データベース: `mydb10` -- CREATE DATABASE `mydb10` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; MySQL のメッセージ: #1007 - Can't create database 'mydb10'; database exists ●インポートの内容(mydb.sql) -- phpMyAdmin SQL Dump -- version 3.5.2.2 -- http://www.phpmyadmin.net -- -- ホスト: 127.0.0.1 -- 生成日時: 2013 年 4 月 20 日 08:27 -- サーバのバージョン: 5.5.27 -- PHP のバージョン: 5.4.7 SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8 */; -- -- データベース: `mydb10` -- CREATE DATABASE `mydb10` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; USE `mydb10`; -- -------------------------------------------------------- -- -- テーブルの構造 `db10` -- CREATE TABLE IF NOT EXISTS `db10` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` text NOT NULL, `address` text NOT NULL, `tel` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ; -- -- テーブルのデータのダンプ `db10` -- INSERT INTO `db10` (`id`, `name`, `address`, `tel`) VALUES (1, 'あああ', 'いいい', '111'), (2, 'ううう', 'えええ', '222'), (3, 'おおお', 'かかか', '333'); /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
質問日時: 2013/04/20 15:45 質問者: dradra33
ベストアンサー
2
0
-
mysqlの->とはどういう意味ですか?
SSH接続によりTera Termを使ってmysqlに接続しています。 今までmysqlにはphpmyadminでしかアクセスしたことがなく、初めてコマンドで挑戦中です。 mysql> show databaces というコマンドを打つと -> という表示がされて、それ以降何を打っても -> しかでてきません。 ->というのはどのような意味なのでしょうか? また、どうのように mysql> の表示に戻せるのでしょうか? よろしくお願いいたします。
質問日時: 2013/04/17 14:03 質問者: blue_camino
ベストアンサー
3
0
-
mysqlの画面から抜けられない
CentOS6.3(64bit)にmysql-serverとmysql-develをインストール後 mysql> の状態の時に mysql> mysql -u root -p と入力したところ mysql> mysql -u root -p -> 上記の画面になり 抜けようとして「quit」「bye」「exit」やら打ち込んでenterしても -> の文字がずーと出続けます。 mysql> mysql -u root -p -> quit -> bye -> quit こんな状態です。 抜ける「キャンセル」したいのですがどのようにすればよいのでしょうか。
質問日時: 2013/04/15 15:29 質問者: cghud
ベストアンサー
1
0
-
Mysql 参照 計算
col1|col2|col3|col4|col5 1001|1003|20|15|5 1002|1001|23|20|3 1003|1002|40|36|4 1003|1003|40|32|4 1003|1003|30|28|4 1004|1003|20|15|5 1004|1004|14|10|5 1005|1004|23|17|6 1006|1005|20|13|7 のようなテーブルを作成し、col1に対してcol2は、行ずれで入力されています。 col1とcol2が違う場合、col3-col5をcol4へ 。 col1=col2の場合、1行上のcol4-col5としています。 EXELでは =IF(A3=B3,D2-E3,C3-E3) として出力でるのですが、 Mysqlでこれを実現するにはどうしたら良いでしょうか。 col1とcol2がマッチしない場合は、通常処理としてcol3-col5をcol4に行い、 マッチする場合は、通常処理で行われたcol4-col5をcol4へ出力します。 マッチが連続すれば、col4-col5が繰り返されるイメージです。 よろしくお願いします。
質問日時: 2013/04/14 10:10 質問者: spider32
解決済
2
0
-
Access SQL パラメータクエリ(DAO)
Access初心者で、独学で頑張っています。 どうしても一人で解決できないので、教えてください。 下記のようなコードを書きましたが、#1で 『PARAMETER句の構文エラーです』 となります。 Dim qd As DAO.QueryDef Dim rs3 As DAO.Recordset Dim mySQL As String Set qd = CurrentDb.CreateQueryDef("") mySQL = "PARAMETERS [ParaヘッダーID] COUNTER;" mySQL = mySQL & "SELECT [テーブルA].[明細ID], [テーブルA].[ヘッダーID] " _ & "FROM テーブルA " _ & "WHERE ((([テーブルA].[ヘッダーID])='ParaヘッダーID'));" With qd .SQL = mySQL ' #1 ここで『PARAMETER句の構文エラーです』 となる .Parameters("ParaヘッダーID") = [TempVars]![tempヘッダーID] Set rs3 = .OpenRecordset() End With (この後、処理を続ける) やりたいことは、 「テーブルA」から、「ヘッダーID」が一時変数[TempVars]![tempヘッダーID]と一致するデータを抜き出し、後続の処理に使いたいのです。 なお、ヘッダーIDは長整数型で、[TempVars]![tempヘッダーID]をウォッチで確認すると整数が入っていました。 SQLについて、いろいろ調べて試しましたが、なかなか上手く行きません。 どこが違うのかご教授お願いします。
質問日時: 2013/04/12 14:51 質問者: momotako123
ベストアンサー
1
0
-
mysql ひとつ上のレコード
恐れ入ります。 Mysqlにて、ひとつ上のレコードを参照し、 真であれば○○偽であれば××という処理をしたいのですが、どのような方法がありますでしょうか。 EXELで行うと、=if(A1=A2,"1","0") のような処理になります。 昇順で並び替えて、重複レコードについて処理を行いたいです。 よろしくお願いします。
質問日時: 2013/04/12 13:24 質問者: spider32
ベストアンサー
3
0
-
DBの文字コード切り替え
MySQL 5.6 なのですが・・・・ DBの文字コードはDB作成後にデータを登録した後に、途中で文字コードを変更した場合、DBに登録済みの全角文字はどうなりますか? 文字化けする場合、変換ツールのようなものはあるのでしょうか? また文字コードの変更は ini ファイルを変更してMySQLを再起動するだけでいいのでしょうか?
質問日時: 2013/04/11 18:50 質問者: yamada009
ベストアンサー
1
0
-
MySQLコマンドプロンプトからのデータ入力
MySQL勉強中です。Windows7のコマンドプロンプトでデーターを入力したいのですが、日本文字がエラーになります。 コマンドプロンプトの文字コードがシフトJISになっているので、chcp65001でutf-8にコード変換しました。しかし、日本文字が表示されません。 MSゴシックにフォント設定をしてから再度utf-8に変換しましたが、やはり日本語選択が出来ません。 ネットの情報によると、最初にMSゴシックに設定しないでコード変換してしまうと、次からは設定項目に表示されないとのことです。 さて、その対処法をお教え願えないでしょうか。 MySQLのバージョンは5.1です。 よろしくお願い致します。
質問日時: 2013/04/11 14:08 質問者: float-up
解決済
2
0
-
mysql 空いているカラム
恐れ入ります。mysqlで右端のカラムにデータを次々とupdateしたいのですが sql文はどのようにすれば良いでしょうか。 右端のデータの無いカラムのを探してupdateするイメージです。 よろしくお願いします。
質問日時: 2013/04/10 19:00 質問者: spider32
解決済
2
0
-
MySQLの起動ユーザ
よろしくお願いします。 OS:Redhat Enterprise Linux 6 DB:MySQL5.6 OSでrootで作業をしており、MySQLをrpmパッケージからインストールすると、 実行ユーザがrootになってしまうことを危惧しています。 サービスをrootで起動することはセキュリティ上 望ましくない、と聞きました。 別途「mysql」というユーザを作成しました。 このmysqlユーザをサービスの起動ユーザとしたいのですが、 どういった手順でそれを実施すれば良いでしょうか?。
質問日時: 2013/04/10 03:51 質問者: semaster
ベストアンサー
2
0
-
UTF8の「-」をsjisで表示する
mysqlに「1-1-1」という文字をUTF8で登録しました。 sjisで書かれたphpファイルでこの文字を表示するために、sjisに変換したのですが 「1?1?1」となってしまいます。 うまく表示するにはどうすれば良いでしょうか?
質問日時: 2013/04/08 12:08 質問者: 25taku
ベストアンサー
2
0
-
order by 2カラムの先頭1文字で並替可能?
order byする際、2カラムの先頭1文字で判断して、並べ替えることは可能でしょうか? ■想定 ・titleカラム ・yomiカラム ※運用案 案1 「titleカラム」先頭1文字目に漢字が入っているときだけ、yomiカラムにカタカナでフリガナを振る 案2 「titleカラム」先頭1文字目に漢字が入っているときは必ず、yomiカラムにカタカナでフリガナを振る
質問日時: 2013/04/07 18:55 質問者: re97
ベストアンサー
2
0
-
phpMyAdminでのデータ検索方法
「さくら」のレンタルSVを利用しています。 そのSVのphpMyAdminで特定のレコードの検索方法について教えてください phpMyAdminのバージョンは3.3.10.5となっています テーブルはフールド数200程度、レコード数2000程度のDBがあります その中から、ある特定のレコードを抽出して特定のフィールドのデータ 修正をしようとしています phpMyadminにログインし該当のテーブルを指定してデータを全件表示します。 例えばフィールドが、a1,a2,a3,a4・・・とあったとします a1に"abcde"があることを確認した後(試験のためで本来は必要なし)、 phpMyadminの検索メニューをクリックして検索画面に進みます その画面でフールドa1のところに"abcde"を打鍵して「実行」ボタン を押下したら、本来は該当のデータが出てくると思うのですがエラー画面がでます 内容は 実行したSQL: select'a1','a2','a3'・・・・ from 'テーブル名' where 'a1'=abcde order by limit 0,30 MySQLのメッセージ #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 0, 30' at line 2 とこのようなメッセージがでます ちなみに 次のSQLのselectの所を全て選択するのでなく*で記載すると該当のレコード を抽出できます select * from 'テーブル名' where 'a1'=abcde phpMyAdminの検索画面の最下段にオプションがあり該当のフィールドを 1つ以上選択できる画面があるのですが、10件程度の選択なら抽出します 全件を選択したり20件だとエラーとなります このオプションでの選択数は限度があるのでしょうか あるいは、別に何か選択する方法があるのでしょうか どなたか、上記の操作で検索ができるようにする方法を教えて いただけませんか よろしくお願いします。
質問日時: 2013/04/02 19:02 質問者: city21_kum
解決済
1
0
-
Mysql delete 参照
恐れ入ります。 Mysql で、2つのテーブルがあり、 1つが1000レコード 2つめが1500レコードあります。 プライマリーコードを参照して、 1つめの1000レコードに、2つめのテーブルを揃えたいのですが、 うまくいきません。 delete from t2 left join t1 on t2.num=t1.num where t1.num IS NULL; としましたがうまくいきませんでした。 1つめのテーブルのレコードにマッチしたもの以外を2つめのテーブルから削除みたいな感じです。 よろしくお願いします。
質問日時: 2013/04/01 18:57 質問者: spider32
ベストアンサー
2
0
-
オートインクリメントについて
カラムはidとnameです AUTO_INCREMENTをidにつけました googleで検索したら、「AUTO_INCREMENTをつけた場合はindexをつけなくてはいけない」 と書いてあったのですが、なぜindexをつけないといけないのでしょうか?indexなしだとよくないですか? 今あるidのカラムにsqlでindexを付けることはできますか? よろしくお願いします
質問日時: 2013/03/29 22:57 質問者: flash0
ベストアンサー
2
0
-
phpMyadmin(さくらSV)で検索ができない
レンタルSV(「さくら」スタンダード)でMySqlを利用しています phpMyadinで作成したフールド数200程度、レコード数2000程度のDBがあります 今回、ある特定のレコードを抽出して特定のフィールドのデータ 修正をしようとしています phpMyadminにログインし該当のテーブルを指定してデータを前件表示します。 例えばフィールドが、a1,a2,a3,a4・・・とあったとします a1に"abcde"があることを確認した後(試験のためで本来は必要なし)、 phpMyadminの検索メニューをクリックして検索画面に進みます その画面でフールドa1のところに"abcde"を打鍵して「実行」ボタン を押下したら、本来は該当のデータが出てくると思うのですがエラー画面がでます 内容は 実行したSQL: select'a1','a2','a3'・・・・ from 'テーブル名' where 'a1'=abcde order by limit 0,30 MySQLのメッセージ #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LIMIT 0, 30' at line 2 とこのようなメッセージがでます ちなみに 次のSQL文を直接たたくと表示されます select'a1','a2','a3'・・・・ from 'テーブル名' where 'a1'=abcde どなたか、上記の操作で検索ができるようにする方法を教えて いただけませんか よろしくお願いします。
質問日時: 2013/03/28 15:28 質問者: city21_kum
解決済
1
0
-
特定のレコードだけを表示させるためのコード
●質問の主旨 kensaku.htmlから数字(データベースのコード番号)を入力・検索して、 PHPMyAdminにあるデータベースから、特定のレコードを取り出したいのですが、 データベースにあるすべてのデータが返されます。 検索窓に入力した特定のレコードの内容だけを 返すためには、下記のichiran.phpをどのように直せばよいでしょうか? ●プログラムの流れ 1.kensaku.htmlの検索窓に番号を入力・送信 2.PHPMyAdminにあるデータベース(aketo)にアクセス 3.ichiran.phpで検索結果を表示 ●プログラムコード (kensaku.html) <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>PHPの基礎</title> </head> <body> <form method="post" action="kensaku.php"> ご意見コードを入力してください。<br/> <input name="code" type="text" style="width:100px"><br/> <br/> <input type="submit" value="送信"><br/> </body> </html> (ichiran.php) <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>PHPの基礎</title> </head> <body> <?php $code=$_POST['code']; $dsn = 'mysql:dbname=phpkiso2;host=localhost'; $user = 'root'; $password = ''; $dbh = new PDO($dsn,$user,$password); $dbh->query('SET NAMES UTF-8'); $sql = 'SELECT * FROM anketo WHERE code='.$code; $stmt = $dbh->prepare($sql); $stmt->execute(); $stmt->execute(); while(1) { $rec = $stmt->fetch(PDO::FETCH_ASSOC); if($rec == false) { break; } print$rec['code']; print$rec['nickname']; print$rec['email']; print$rec['goiken']; print'<br/>'; } $dbh = null; ?> </body> </html> ●開発環境 windows8 xammp1.8.1 MySQL(PHPMyAdmin)
質問日時: 2013/03/27 18:16 質問者: dradra33
ベストアンサー
1
0
-
wordpress データベース接続確立エラー
●質問の主旨 wordpressのデータベースに接続しようとしたら、 「接続確立エラー」が表示されます。 (添付画像) Google検索などで自分で調べて対策を講じてみましたが、 次の画面に進めません 他に何か対策をご存知の方、よろしくお願いします。 ●状況 1.xampp1.8.1をアンインストールした後、 再インストール ↓ 2.wordpressをダウンロード ↓ 3.wordpressフォルダ内にある wp-config-sample.phpを書き換え ↓ 4.wordpressフォルダをC\xammp\htdocsの下に配置 ●書き換えたwp-config-sample.phpの参考サイト 「MySQL 設定」部分の書き換え。 http://39kn.com/2011/05/17/5366/ 「ホスト名」の書き換え http://hryksbt.b.sourceforge.jp/archives/338/
質問日時: 2013/03/25 17:30 質問者: dradra33
ベストアンサー
2
0
-
データベースを削除後エラー(phpMyAdmin)
●質問の主旨 phpMyAdminのデータベースを削除したら画面の左側に エラーが出ました。この表示を消すためにはどうすればよいでしょうか? 昨日、はじめたばかりでまだよく分かっていません。 ご存知の方よろしくお願いします。 ●質問の補足(エラーの状況) 1.データベースにチェックを入れる 2.削除ボタンをクリック 3.エラーが表示 4.このあと新規でデータベースを作成しても、 フィールドの設定をするとエラーが出る ●開発環境 windows8 xammp
質問日時: 2013/03/24 22:44 質問者: dradra33
ベストアンサー
1
0
-
同時書き込み
mysqlを使おうと勉強中です mysqlに同時書き込みした場合についての質問です 例えば,5人のユーザーが同時に書き込んだとします。書き込むレコードは全て違います ユーザー1がレコード1行目に書き込み ユーザー2がレコード2行目に書き込み ユーザー3がレコード3行目に書き込み ユーザー4がレコード4行目に書き込み ユーザー5がレコード5行目に書き込み この場合は、普通のtableで処理できますか?
質問日時: 2013/03/23 02:43 質問者: flash0
ベストアンサー
2
0
-
お助けください。。。
現在、mysql+phpを使ったwebシステムの開発を行っているのですが、日本語の文字化けに 苦戦しています。 mysqlのコマンドでselect * from テーブル名 と打ったところ、insertコマンドで投入した要素名で 日本語で入力したものが、?????で表示されてしまいます。 しかし、create tableコマンドでField名を日本語で入力したのですが、こちらは正しく表示されて います。 my.iniの内容を変更したりしていますが、状況に変化がありません。 どうすれば、直りますか? 以下に、show valiablesの結果を記載します。 +--------------------------+------------- | Variable_name | Value | +--------------------------+--------------- | character_set_client | cp932 | | character_set_connection | cp932 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | cp932 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | C:\xampp\mysql\share\charsets\ | +--------------------------+-----------------
質問日時: 2013/03/20 20:48 質問者: matsu77
ベストアンサー
2
0
-
htmlタグを含んだ文字のデータベースへの読み書き
PHPで、「htmlタグを含んだ文字」を、 データベースへ読み書きする安全な方法を教えて下さい。 リンクタグや、フォントタグなどは、 そのまま使用できるようにしたいです。 ■追加する時 htmlフォームからデータベースに保存(SQLインジェクション) ■編集する時 データベースからデータを読み出す(htmlエスケープ) htmlフォームで再編集し、データベースに保存(SQLインジェクション) こういう作業になるかと思いますが、 どのように処理したら、htmlタグを使いつつ、 安全に更新ができるでしょうか? 教えてくださいm(_ _)m
質問日時: 2013/03/19 16:58 質問者: k5z
ベストアンサー
2
0
-
レコード削除・sqlインジェクション対策
このようなSQL文は危険でしょうか? $sql = "delete テーブル名 where id = :id"; $stmt = $dbh->prepare($sql); $stmt->execute(array(":id" => $_POST['id'])); 上記の例だと、$_POST['id']は、 ちゃんとエスケープできているのでしょうか?
質問日時: 2013/03/19 11:36 質問者: k5z
ベストアンサー
3
0
-
phpMyadmin カラムの型、他
始めたばかりの初心者です。 よろしくお願いします。 phpmyadminの事で質問があります。 ◇型の設定で、桁数を決める際にINTで(6)としても 試しに10桁を入れても(phpmyadminで直接) 入ってしまいます。試しにと思ってINTのところに ”あいうえお”を入れても入ってしまいます。 どういう事でしょうか? ◇またINTの上限数値って4294967295だとすると 桁数の設定は(10)までは意味があっても、(11)以上に しても意味がないのでしょうか? ◇INT(11)に上限数値の4294967295をいれると 何が起こるのですか? ◇最後にもうひとつ テーブル作成の際にphpmyadminの(sqlタブ)でつくるとき 以下のような記述をするとそのやり方を習ったのですが、 (サンプル) Name` varchar(32) NOT NULL default '', この記述の意味がイマイチ理解しきれません。 NOT NULLとは、ヌル値は認めないというのに、 defaultは””(ヌル)で設定ができてしまう。って 矛盾してませんか?それとも私の解釈が間違っていますか? たくさん質問してしまいましたが、よろしくお願いします。
質問日時: 2013/03/17 12:08 質問者: hayaken73
ベストアンサー
1
0
-
ドメイン情報管理テーブル作成の仕方
◆やろうとしていること 現在エクセルで管理している40個ほどのドメイン情報を、Webで管理(検索・更新・削除)する簡易システムをデータベースとPHPの勉強をかねて構築しようとしています。 ※環境は、LAMPで構築しようとしております。 ◆知りたいこと ドメイン情報管理テーブルを作ろうとしているのですが、その作成の仕方について、アドバイスしていただけたらと思っています。(正規化の方法??) ◆疑問点 管理対象のドメイン情報は、重複が多いデータです。 ・同一のネームサーバで複数のドメインを管理している ・同一の業者が複数ドメインのレジストラとなっている ・同一の担当者が複数案件の担当者となっている ・同一IDで複数ドメインの管理を行っている たとえば、次のような感じです。 例) ドメイン名 レジストラ ネームサーバ 案件担当者 ID 案件情報 hoge.com お名前.com ns.bbb.jp 東京一郎 a0002 自社ECサイト hoge.jp お名前.com ns.bbb.jp 東京一郎 a0002 自社コーポレイトサイト test.jp さくらインターネット ns.bbb.jp 京都一郎 a0003 あいう社コーポレイトサイト aaa.jp さくらインターネット ns1.bbb.jp 大阪一郎 a0004 かきく社コーポレイトサイト aaa.net ムームードメイン ns1.bbb.jp 東京一郎 a0005 さしす社blogサイト bbb.net ムームードメイン ns1.bbb.jp 東京一郎 a0005 たちつ社ECサイト 現在、エクセルで上記のような情報を管理しています。 これを初学者の私なりに正規化してみると ・ドメインリストテーブル(主キーとドメイン名だけが入っているテーブル) ・案件担当者リストテーブル(主キーと案件担当者だけが入っているテーブル) ・レジストラリストテーブル(主キーとレジストラだけが入っているテーブル) ・ネームサーバリストテーブル(主キーとネームサーバだけが入っているテーブル) ・IDリストテーブル(主キーとIDだけが入っているテーブル) ※各テーブルの主キーは、ドメインリストテーブルの主キーを設定 と、知識と経験が無いため、テーブルをいちいち細かくすることしかできないのです。 そこで、このようなデータを管理するテーブルを作る場合の一般的な考え方・注意事項・コツ・ポイントなどを踏まえアドバイスをいただけたらと思い質問いたしました。 具体的に、俺だったら、こういうテーブルに分割してドメイン情報を管理する。その理由は云々、といったかたちでアドバイスいただけますと大変助かります。 よろしくお願いします。
質問日時: 2013/03/13 13:49 質問者: Kimurata
ベストアンサー
1
0
-
mysql危険回避(1 OR effective)
mysqlの危険回避の質問です。 (私がした1つ前に質問したものでは、解決しなかったので再度表現を変えて行います。) mysqlでwhere句の値に 1 OR effective=0 が入ると危険であり、シングルクオテーションで回避できる、とあるサイトでみました。 それを踏まえ、それまで以下の(1)で動いていたものを(2)にしたら、動かなくなりました。 そこで質問です。 (初めてphpに触れた人に教えるレベルで、かなり噛み砕いて教えていただけたら幸いです。) ■(1)はそのままでは危険という認識でよろしいですか? ■(2)はなぜ動かないのでしょうか? ■(1)を危険のない(もしくは可能な限り危険のない)書き方をするとしたらどうしたら いいでしょうか?(PDOで書く事!やmysqliがいい、というのは知っています。 どうしてもmysql_real_escape_stringを使わなくてはいけないという条件があったと 想定して強引にやるとしたらどうか、という事でお答えをいただければと思います。) (1) $sql = sprintf("SELECT id , password FROM `adminDatabase` where id = '%s' and password = '%s' order by id", mysql_real_escape_string($id),mysql_real_escape_string($password)); (2) $id = "'" . mysql_real_escape_string($id) . "'"; $password = "'". mysql_real_escape_string($password) . "'"; $sql = sprintf("SELECT id , password FROM `adminDatabase` where id = '%s' and password = '%s' order by id",$id , $password ); よろしくお願いします。
質問日時: 2013/03/12 08:41 質問者: hayaken73
ベストアンサー
1
0
-
MySQLのORDER BYについて
MySQLで、テーブルに書籍名リストが入っているとします。 このとき、列「書名」には、以下のような、書名の後に1から11までの連番がついたデータが順不同で入っています。 国語辞書 1 国語辞書 2 国語辞書 3 ・・・ 国語辞書 11 このテーブルに対して、「ORDER BY 書名 ASC」でSELECTをかけると、 「国語辞書 11」が一番最初に来て、その後1から順番に並びます。 これを自然な並び(11で始まるのではなく、1~11の順で整列)にするには、どうしたらよいでしょうか?
質問日時: 2013/03/11 13:03 質問者: rasp777
ベストアンサー
4
0
-
mysql_real_escape_string
独学数ヶ月の初心者の質問で恐縮です。 もろもろの事情で仕方なくmysql_real_escape_stringを 以下(1)のように使用しなくてはならないと仮定し、 セキュリテイの面で(2)のようにシングルクオテーションつける 事で危険を回避できますか? またシングルクオテーションは(2)のようにつけてはいけない とかありますか?(記述の基本が曖昧なため、ただの確認の質問) (1) $sql = sprintf("SELECT id , password FROM `adminDatabase` where id = '%s' and password = '%s' order by id", mysql_real_escape_string($id), mysql_real_escape_string($password)); (2) $sql = sprintf("SELECT id , password FROM `adminDatabase` where id = '%s' and password = '%s' order by id", ’mysql_real_escape_string($id)’, ’mysql_real_escape_string($password)’); よろしくお願いします。
質問日時: 2013/03/11 10:42 質問者: hayaken73
ベストアンサー
3
0
-
phpの基礎的な事
php初心者です。独学で現在勉強していますが、環境に 関する本当に基本的な事がぜんぜん理解できていない事に 気づきました。 質問をする上でちょって変な表現をしてしまうかもしれませんが お許しいただき、また子供に教えるように噛み砕いてお答え いただければ幸いです。 質問 ■mysql mysqlそのものがいったいなんだかがよくわかりません。 (はじめは、htmlやJavaなどコンピューター言語の1つ なのかと思っていました。) ・mysqlとはDBのシステムの1つと考え、それはパソコンで いうところのOSみたいな通常はあまり意識する事が ない存在という事なのでしょうか? ・lolipop(サーバー)を利用しているのですが、通常は mysqlというものをインストールしないと動かないものが はじめから用意されているからmysqlを意識せずにいられる のでしょうか? ■mysqlが非推奨?? ネットであれこれ情報を集めていたら、mysqlが今後非推奨に なるのか?mysqlの関数が非推奨になるだの、PDOやらmysqli がいいだのとありましたが、まだ全体の知識が浅いため いっている内容がさっぱり理解できません。 ・もしphpのバージョンによりmysqlを使えないと仮定した場合 サーバー上ではどんな設定が必要で、ソースの書き方はどうなって しまうのでしょうか? (自分の理解) (1)サーバーにmysqli(これってシステム?言語?なのかすらよく 理解できていません)をインストール (2)phpでデーターを呼び出す時は、mysqliの記述の仕方で呼び出す ■これからどういう順序で何を勉強したら良い。 時間とお金がないので可能な限り効率的な順序で勉強をしたいのですが、 これからPHPとDBを扱うには何をどういう順番で勉強すると いいのでしょうか?また他にアドバイスがあればよろしくお願いします。 (クラスだの、オブジェクト指向だのが全くわかりません、またフレーム ワーク、その他難しいことは、基礎を覚えた後にやらないと結局痛い目に あうものでしょうか?などなどに対するアドバイス等) 長々となってしまいましたが、頭が混乱しているので、 頭の中の整理をお付き合いいただける方、よろしくお願いします。
質問日時: 2013/03/08 10:38 質問者: hayaken73
ベストアンサー
2
0
-
MySQLがインストールされているかわかりません
当方、初心者です。 訳あって、古いバージョンのMySQLをインストールすることになりました。 MySQLのサイトからバージョンが5.1.68の mysql-server mysql-client mysql-devel mysql-shared をダウンロードして、 #rpm -ivh mysql-server-5.1.68-1.glibc23.x86_64.rpm #rpm -ivh mysql-client-5.1.68-1.glibc23.x86_64.rpm #rpm -ivh mysql-devel-5.1.68-1.glibc23.x86_64.rpm #rpm -ivh mysql-shared-5.1.68-1.glibc23.x86_64.rpm とコマンドをうちました。 それぞれ100%となり、エラーメッセージは出ませんでした。 その後 #rpm -qa │ grep mysql と打っても何も表示されませんでした。 /etc/init.d/にmysqlはありますが、mysqldはありません。 mysql startとうつとOKと表示され showdatabaseもできました。 これでインストールは完了しているのでしょうか? OSはCentOS5.9です。 構成管理のパッケージソフトをインストールするために 前提としてMySQLが必要と記載されていたのみなので どのMySQLをインストールすれば良いかもわかりません。 心優しい方のアドバイスをお待ちしております。
質問日時: 2013/03/07 20:17 質問者: parmlove
解決済
2
0
-
ウィキシンタックスって、何ですか。
いま、英字新聞で、『ウィキペディア』に関する記事を読んでいます。 その中で、「ウィキペディアを編集するためには、ウィキシンタックス(wiki syntax) を学ばなければならない。」とあるのですが、ウィキシンタックスとは、何ですか。 また、日本語に訳したら、何て言うのでしょうか。(「ウィキシンタックス」でいいのでしょうか。) どなたか、教えてください。
質問日時: 2013/03/04 21:04 質問者: mit-caltec
ベストアンサー
2
0
-
インポートできない。
あるテーブルのデータをダンプしてエクスポート(export_utf8.sql)しました。 それを他のMysqlへインポートしようと以下のコマンドを実行したところ、 mysql -p --default-character-set=utf8 db < export_utf8.sql 以下のエラーが出力されました。 Unknown MySQL server host 'border="1"' (1) おそらく、エスケープ関連でコケているものかと思いますが、 どうすればインポートできるのかわかりません。 ご存知の方、宜しくお願いします。
質問日時: 2013/02/24 15:55 質問者: nikogoo
ベストアンサー
1
0
-
UNIONする際、片方テーブルしかないカラムも利用
UNIONする際、片方のテーブルしかないカラムも利用したいのですが、どうすればよいでしょうか? ■現状 SELECT tablename, id, level FROM ( SELECT \'A\' tablename, s.id, s.level FROM A s UNION ALL SELECT \'B\' tablename, r.group_id, r.level FROM B r ) as UNI ■やりたいこと ・テーブルAにしかないカラム「age」も一緒にSELECTしたいのですが、どうすれば良いでしょうか? ・UNIONしたいわけではなく、UNIONした後のレコード同様、「age」カラムもSELECTしたい、という意味です ・UNIONの外側で何かやればいいのかな、と思い試したのですが、うまくいきませんでした
質問日時: 2013/02/23 12:14 質問者: re97
ベストアンサー
3
0
-
VBAからMySQLにコマンドファイルを渡すには
いつも楽しく勉強させていただいております。 環境はWin7、Office2007、MySQL5.5.28です。 データはMySQL上にあり、それを集計した結果をExcelまたはcsv形式で取り出すプログラムを開発中です。 集計の表側(ブレークダウン)や絞込みの条件は可変なので、AccessでMySQLに渡すコマンドを編集し、テキストファイルとして出力します。 このテキストファイルを実行するのに目下のところ次の二通りで行っています。 1.MySQLのクライアント画面から下記のように実行 source C:\Users\meglin\Documents\サマリー.sql 2.コマンドプロンプト画面から下記のように実行 "C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql" -u root -D meglindb -proot < C:\Users\meglin\Documents\サマリー.sql どちらの方法でも快適に動きます。 近々そのプログラムを運用ベースに乗せたいのですが、オペレーションをする上司が「あの黒い画面(MySQLのクライアント画面/コマンドプロンプト画面)を触るのがコワイ。すべてAccessから対応できないか」と言います。 要するに上記コマンドのサマリー.sqlをAccessの中から起動したいのです。 できますでしょうか。 おそらくShell関数を使うのだと思って下記のように書いてみたのですが、うまく動いてくれません。 Shell("""C:\Program Files\MySQL\MySQL Server 5.5\bin\mysql"" -u root -D meglindb -proot < C:\Users\meglin\Documents\サマリー.sql") どうしたらいいでしょうか。 最初はAccessからMySQLにODBC接続とADOで1行ずつ実行してみたのですが、集計の列と行が多いので処理時間がかかり実用的ではありません。
質問日時: 2013/02/22 13:42 質問者: meglin888
解決済
1
0
-
レコード全加算
恐れ入ります。 Mysql をつかって、2つのテーブル(同一並びのカラム)の、各々のレコードを足したいのですが、 どのようにしたらよろしいでしょうか。 table1 ------------ col1|col2|col3 20 |30 |40 40 |40 |50 10 |20 |20 ------------ table2 ------------ col1|col2|col3 10 |10 |20 20 |20 |20 10 |20 |20 ------------ 処理後 ------------ col1|col2|col3 30 |40 |60 60 |60 |70 20 |40 |40 ------------ のようにしたいです。よろしくお願いします。
質問日時: 2013/02/22 13:38 質問者: spider32
ベストアンサー
2
0
-
tableの連結
http://oshiete.goo.ne.jp/qa/7944235.html の件に引き続きどうSQL文を書いてよいかわからず困っています。 create table team(team_id int not null primary key,team_name varchar(30),year int(4), leagueid int(32) ); insert into team values(1,"A",2012,1),(2,"B",2012,1),(3,"C",2012,1),(4,"D",2012,1),(5,"A",2012,2),(6,"B",2012,2),(7,"C",2012,2),(8,"D",2012,2),(9,"A",2011,1),(10,"B",2011,1),(11,"C",2011,1),(12,"D",2011,1); create table taisen(id int not null primary key auto_increment,hometeam int,homepoint int,awayteam int,awaypoint int); insert into taisen (hometeam,homepoint,awayteam,awaypoint) values(1,3,2,2),(3,1,4,0),(1,0,3,2),(2,2,4,2),(1,1,4,2),(2,0,3,0),(2,1,1,2),(4,1,3,3),(3,5,1,2),(5,3,6,3),(5,1,7,1),(7,1,8,1),(9,1,10,1),(11,1,12,3); とあり、 taisen.hometeamとteam.idとtaisen.awayteamとteam.idを結合し、taisenテーブルにteamのyear、leagueid、team_nameが表示されればと思っています。 通常のjoinであればできるのですが、どのようにsql文をかけばよいのかわからず困っています。 taisen.hometeamとteam.idとtaisen.awayteamとteam.idを結合したときに | taisen.hometeam | ホームチーム名 | taisen.homepoint | taisen.awayteam | アウェイチーム名 | taisen.awaypoint | team.year | team.leagueid で結果がとれるようにしたいのですが、どのようにしたらよろしいでしょうか?
質問日時: 2013/02/21 07:47 質問者: h199613
ベストアンサー
1
0
-
異なるデータベース間のリレーション
phpmyadmin上の異なるデータベース間のテーブルでリレーションをかけたいのですが、うまくいきません。 new_linkフラグをtrueにすることで異なるデータベースを開くところまではできました。 アドバイスいただけないでしょうか。 ※DB1の中にtable1が、DB2の中にtable2がある //失敗する $con1 = mysql_connect("localhost",username,pass); mysql_select_db('DB1',$con1); $con2 = mysql_connect("localhost",username,pass,true); mysql_select_db('DB2',$con2); $sql = "select * from table1,table2 where table1.id = table2.id"; $result = mysql_query($sql) or die(mysql_error()); メッセージ⇒Table 'DB2.table1' doesn't exist //これは成功する $con1 = mysql_connect("localhost",username,pass); mysql_select_db('DB1',$con1); $con2 = mysql_connect("localhost",username,pass,true); mysql_select_db('DB2',$con2); $sql1 = "select * from table1"; $result1 = mysql_query($sql,$con1) or die(mysql_error()); $sql2 = "select * from table2"; $result2 = mysql_query($sql2,$con2) or die(mysql_error());
質問日時: 2013/02/20 14:40 質問者: 25taku
ベストアンサー
1
0
-
MySQLの謎テーブル構成の実現方法
タイトルが意味不明ですみません 実現したいことはちょっと複雑なのですが 1.表面テーブル(view?)は1つのテーブルであり、そこにSELECTやINSERT、UPDATE、DELETEを発行。 2.裏は更新系テーブルと参照系テーブルに分かれている。 【更新】表系テーブル(view可)に発行した更新系コマンドで更新系テーブルを更新し、トリガー等でリアルタイムに参照系テーブルに反映。 【参照】表系テーブルにたいして発行したSELECT文は参照系テーブルをみる。 条件として入り口を分けることはできません。
質問日時: 2013/02/20 12:04 質問者: kudakuda1211
解決済
4
0
-
CURDATE( )をフォーム内で使用するには?
MySQLにフォームでインサートすることに悩んでいます。 INSERT INTO table (id,date) VALUES ('1234',CURDATE()) とするとmySQLにユーザーIDと本日の日付を入力できます。 これをフォームから下記の形で入力しようとすると、日付が入力されず、0000-00-00 になってしまいます。 <form action ="insert.php"> <input type="hidden" name="id" value='1234' > <input type="hidden" name="date" value="<?php print(CURDATE()); ?>" > <input type="button" value="submit" name="入力"> </form> value=""の中で本日の日付を指定する場合はどうすればいいかをご教示願います。
質問日時: 2013/02/19 23:31 質問者: tajix14
ベストアンサー
1
0
-
order byでカラムが空の場合は、別カラム指定
order byで複数カラム指定(?)したいのですが、どうすればよいでしょうか? 具体的には、カラムが空の場合は別カラム指定したいのですが、可能でしょうか? ■前提 ・titleカラム、yomiカラム ■最終的にやりたいこと ・titleカラムを五十音で並べ替えたい ■運用例(案) ・titleカラムが「漢字」の場合は、yomiカラムにひらがな、を入力 ・titleカラムが「ひらがな」の場合は、yomiカラムは空 ・titleカラムが「英字」の場合は、yomiカラムは空 ・titleカラムが「先頭数語がひらがなもしくは英字で、最後が漢字」の場合は、yomiカラムは空? ■分からないこと ・漢字対策として、「yomiカラム」作成したけど、すべてのレコードに対して、「yomiカラム」を埋める必要があるでしょうか? ・「ひらがなだけ」、「英字だけ」、あるいは、「先頭数語が英字で最後の方だけ漢字」なタイトルは、わざわざ「yomiカラム」を埋めなくてもよい? ■知りたいこと ・全ての「yomiカラム」を埋めなくても、「titleカラム」を五十音で並べ替える方法があれば、教えてください ※件数が多くてちょっと面倒なため、何かいい方法があればと思い、質問しました。「yomiカラム」全部埋めた方がいい、のであれば、その方向で検討しようと思います
質問日時: 2013/02/17 09:52 質問者: re97
ベストアンサー
1
0
-
MATCHとBETWEENを併用したい
namesテーブルのcontentsカラムにねこを含むレコードのうち、 現在までに書き込まれたものを新しいものから抽出したいと思います。 contentsはverchar(255)、unixtimeはint(11)です。 しかし、 SELECT * FROM names WHERE MATCH (contents) AGAINST ('+ねこ' IN BOOLEAN MODE) AND BETWEEN unixtime < 1360850220 ORDER BY `unixtime` DESC limit 1,50 ; が出力されません。 このSQL文はどこが間違っているのか、ご指摘ください。 SELECT * FROM names WHERE MATCH (contents) AGAINST ('+ねこ' IN BOOLEAN MODE) ORDER BY `unixtime` DESC limit 1,50 ; だと出力されるので AND BETWEEN unixtime < 1360850220 が怪しいと思うのですが、どう訂正したらいいのかわかりませんでした。 よろしくお願いいたします。
質問日時: 2013/02/14 23:04 質問者: spinia0120
ベストアンサー
1
0
-
MySQLで連続csvファイルを読み込むために
MySQL 5.6を最近使い始めました。 大量のcsvファイルで保存されているデータを読み込んで、データベースとして扱いたいのですが、どうすれば良いでしょうか? ファイル名は、 data1_1.csv data1_2.csv data1_3.csv data2_1.csv data2_2.csv といった形で、規則正しく並んでいるのですが、大量にあるため、ループを使って自動化したいと思っております。そのために、LOAD DATA INFILE ファイル名 を使って、このファイル名を順次変えて繰り返す方法がわかりません。 まず、ファイル名に変数が使えるのかと思って @file="data1_1.csv"としてファイル名を置き換えてみたのですが、エラーでした。これでは、この1_1を順次動かす以前に変数が無理なのかも?と思っています。 何かやり方があるようでしたら、どなたかお教えください。 どうぞよろしくお願いいたします。
質問日時: 2013/02/14 12:03 質問者: tkhgsh
ベストアンサー
4
0
-
SQL文にて順位表をつくりたい
create table team(team_id int not null primary key,team_name varchar(30),year int(4), leagueid int(32) ); insert into team values(1,"A",2012,1),(2,"B",2012,1),(3,"C",2012,1),(4,"D",2012,1),(5,"A",2012,2),(6,"B",2012,2),(7,"C",2012,2),(8,"D",2012,2),(9,"A",2011,1),(10,"B",2011,1),(11,"C",2011,1),(12,"D",2011,1); create table taisen(id int not null primary key auto_increment,hometeam int,homepoint int,awayteam int,awaypoint int); insert into taisen (hometeam,homepoint,awayteam,awaypoint) values(1,3,2,2),(3,1,4,0),(1,0,3,2),(2,2,4,2),(1,1,4,2),(2,0,3,0),(2,1,1,2),(4,1,3,3),(3,5,1,2),(5,3,6,3),(5,1,7,1),(7,1,8,1),(9,1,10,1),(11,1,12,3); データベース内にデータがあったときに年やleague_idごとに順位表を作りたいのですが、どのようにSQL文を書いてよいかわからず困っています。 理想はこのような感じです。 http://soccer.yahoo.co.jp/ws/standing/?l=52 お分かりの方がいらっしゃいましたらご教授お願いいたします。
質問日時: 2013/02/14 01:45 質問者: h199613
ベストアンサー
2
0
-
MySQLのgroup byの選択基準
お世話になります。質問がふたつあります。 このような、IDとTypeのふたつのカラムで重複しているレコードが多いテーブル「tb」があるとします。 ID Type age 1 1 20 1 2 35 1 3 42 1 2 31 1 3 45 1 2 33 2 1 21 2 3 41 2 1 26 2 2 31 2 1 25 2 1 28 これを、以下のようにしたいのです。 ID Type age 1 1 20 1 2 35 1 3 42 2 1 21 2 2 31 2 3 41 group by ID, Typeとしたところ、 似たような形にはなったのですが、IDとTypeが重複した ID Type age 1 2 35 1 2 31 1 2 33 のうち、group byによってどのような基準でひとつが選択されるのでしょうか? レコードの追加が新しいものが選ばれるのでしょうか? また、ageをランダムでひとつを選択するような書き方はできるのでしょうか。 よろしくお願いします。
質問日時: 2013/02/12 20:59 質問者: nkyfm
ベストアンサー
5
0
-
2つのフィールドの値が同じレコードをひとつと見なす
id field1 field2 1 1 A 2 1 A 3 1 B 4 2 A 5 2 B 6 2 C 7 3 D 8 3 D 9 3 D field1とfield2の値が他のレコードのfield1とfield2と重複している場合はひとつのデータとして返したいです。 id1.2はfield1とfield2の値が同じなので、ひとつのデータしか返しませんが、id3はfield2が異なるので返します。 id4.5.6はいずれもfield2の値が異なるので4.5.6全てを返します。 id7.8.9はfield1とfield2が同じ値なのでひとつのデータしか返しません。 id 1 3 4 5 6 7 該当するレコードは上記のように6個となるようにするにはどのようなsql文を発行すれば良いでしょうか? ご教示頂けますと幸いです。 宜しくお願い致します。
質問日時: 2013/02/11 11:44 質問者: hope9000
ベストアンサー
3
0
【データベース】に関するカテゴリ
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
最新のコラム/記事
-
マッチングアプリで出会ったカップルは成婚率が高い!?結婚カウンセラーに聞いてみた
パートナーとの出会いの場として、もはや主流となったネット婚活やマッチングアプリ。中でも手軽に登録できるマッチングアプリは、10代から50代と幅広い年代が利用している。一方で、“相手の目的が投資関係の詐欺や...
-
メダロット:第250話「Vol.250※期間限定公開」
天才メダロッター六葉カガミの戦いを描く「メダロット再~リローデッド~」(漫画:伯林、監修:イマジニア)、20周年を迎えた『メダロット』が新たなストリーでココに再起動!!★全話無料で読める、週刊メダロット通信...
-
メダロット:第249話「Vol.249※期間限定公開」
天才メダロッター六葉カガミの戦いを描く「メダロット再~リローデッド~」(漫画:伯林、監修:イマジニア)、20周年を迎えた『メダロット』が新たなストリーでココに再起動!!★全話無料で読める、週刊メダロット通信...
-
日本古来の伝統工芸「金継ぎ」で修復した食器は前と同じように使えるの?
大切にしている食器が割れてしまったら、きっと誰もが「元に戻したい」と願うだろう。「教えて!goo」にも「割ってしまったお気に入りの食器を復活できる?」という質問があり、最適な方法について様々な意見が寄せら...
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
#1062 - '0' は索引 'PRIMARY' で重...
-
WHERE `年月日` = '晴' OR `年月日`...
-
PhpMyAdminで作成して実行せよ。 東...
-
mysqlがインストールされているのか...
-
あってますか?SQL
-
SQLを作ったのですがうまくいきませ...
-
〜のような結果を出すためのSQLは以...
-
下の画像はSQLの4大命令の性質をま...
-
書籍の内容はまともでしょうか?
-
SQLです。こんな感じですか?あって...
-
エラー 1068 (42000): 複数の主キー...
-
SQLでカラムを追加し、条件に合致し...
-
【初歩】ラジオボタンをつかったPHP...
-
参考書に従って入力したつもりでし...
-
Mac です。ローカルホストの phpMyA...
-
MySQLでcreateが使えない MySQLを使...
-
SQLです教えてくださいお願いします
-
テーブル名が可変の場合のクエリの...
-
共通点はあります。何が違うのでし...
-
MySQL NULLだけをカウントして抽出...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
#1062 - '0' は索引 'PRIMARY' で重...
-
テーブル名が可変の場合のクエリの...
-
SQLでカラムを追加し、条件に合致し...
-
テーブル:生徒名簿 生徒名簿の項目...
-
SELECT * FROM `生徒名簿` INNER JO...
-
SQL構文です 画像のようにしたいの...
-
〜のような結果を出すためのSQLは以...
-
このSQLあってますか?教えてください
-
MySQLのテーブル作成でハイフン - ...
-
初心者Mysqlの関数のsubstringにつ...
-
SQLです!!教えてください。あって...
-
参考書に従って入力したつもりでし...
-
SQLです!!教えてください。あって...
-
SQLです!!教えてください。あって...
-
データベースの接続に失敗してしま...
-
SQLで漢字名称を都道府県や市区町村...
-
SQLあってますか?こう?
-
エラー 1068 (42000): 複数の主キー...
-
`picture` varchar(255) のコマンド...
-
【初歩】ラジオボタンをつかったPHP...
おすすめ情報