MySQLで別のテーブルの既存エントリに応じてエントリを追加しようとしましたが、 "解決策"(前に質問したことがあります)MYSQLパート2で別のテーブルの既存のエントリに応じてエントリを追加
Add an entry depending on existing entry in another table with MYSQL
は、ここで私は必要なテーブルとインポートデータを作成し、私のクエリです:...私のデータに正常に動作し、なぜ私にはわからない。ここ
は、私はから解決策を持っている質問です。CREATE TABLE `EMailImport` (user_id VARCHAR(20), `E-Mail` VARCHAR(150));
LOAD DATA LOCAL INFILE 'C:/Users/xyz/Desktop/X/export.csv'
INTO TABLE `EMailImport`
FIELDS TERMINATED BY ';'
LINES TERMINATED BY '\n';
DELETE FROM `EMailImport` LIMIT 1;
CREATE INDEX X ON `EMailImport` (`E-Mail`);
CREATE TABLE ABC AS SELECT customerID, ordernumber, `customersEmail`
FROM orders GROUP BY `customersEmail`;
CREATE INDEX Y ON ABC (`customersEmail`);
ここで
(私は解決策を使用している)私が試した2つのクエリは、次のとおりです。
SELECT ABC.*, CASE WHEN `customersEmail` IN (SELECT `E-Mail` FROM EMailImport) THEN 'Yes' ELSE 'No' end AS `Did the customer ordered already?` FROM ABC;
SELECT ABC.*,CASE WHEN EXISTS (SELECT * FROM EMailImport WHERE EMailImport.`E-Mail` = ABC.`customersEmail`) then 'yes' else 'no' end as `Did the customer ordered already?` from ABC;
が働いている両方が、彼らは(正しくないもの)、「いいえ」のすべてのエントリのための私を見る:どこ間違いはあります/問題?
Info
:表ABCの列のデータ型は次のとおりです。customerID = int(10); ordernumber = varchar(50)、customersEmail = varchar(255);
ABCに有効なデータが含まれていますか? –
はい、約300.00エントリ/行 – AbsoluteBeginner