0
嗨,大家好,這是一個問題:檢測如果一個字符串的一部分匹配另一個字符串
顯示員工的員工ID和電子郵件,其電子郵件地址中有充分的姓氏。
您認爲我可以使用什麼?我可以使用substr嗎?如果沒有,還有其他建議嗎?謝謝你們和平!
嗨,大家好,這是一個問題:檢測如果一個字符串的一部分匹配另一個字符串
顯示員工的員工ID和電子郵件,其電子郵件地址中有充分的姓氏。
您認爲我可以使用什麼?我可以使用substr嗎?如果沒有,還有其他建議嗎?謝謝你們和平!
我會使用正則表達式,例如
CREATE TABLE employees (
emp_id NUMBER PRIMARY KEY,
first_name VARCHAR2(30),
last_name VARCHAR2(30),
email VARCHAR2(255)
);
INSERT INTO employees VALUES (1, 'Joseph', 'Ratzinger', '[email protected]');
INSERT INTO employees VALUES (2, 'Tim', 'Cook', '[email protected]');
INSERT INTO employees VALUES (3, 'Larry', 'Ellison', '[email protected]');
INSERT INTO employees VALUES (4, 'Michael', 'Dell', '[email protected]');
SELECT emp_id, email FROM employees WHERE regexp_like(email, last_name);
3 [email protected]
要包括獨立的情況下的結果,使用:
SELECT emp_id, email FROM employees WHERE regexp_like(email, last_name, 'i');
2 [email protected]
3 [email protected]
4 [email protected]
如果您需要排除的主機名,或者一個「@」附加到該模式...
SELECT emp_id, email FROM employees WHERE regexp_like(email, last_name||'@', 'i');
2 [email protected]
3 [email protected]
...或從電子郵件中提取主機名:
SELECT emp_id, email
FROM employees
WHERE regexp_like(regexp_substr(email,'.*@'), last_name, 'i');
基本的SQL就足夠了。不需要字符串功能。 –
只是把它拿出來讓它運行; substr或任何你想到的,它會以最快的方式學習=) – cctan
@LolCoder我試了一些東西。 ^^你能告訴我代碼是否有效嗎?因爲我沒有Oracle。 :'< –