HTML & CSS
JavaScript
SQL
Python
Regex
26 קורסים וכלי למידה
עדכון אחרון 09/11/2022
עדכון אחרון 09/11/2022
SELECT * FROM TABLE for update;
DECLARE v VARCHAR2(100); /* הגדרת משתנה מסוג VARCHAR2) */ BEGIN SELECT 'Hello world' -- שליפת ערך לתוך המשתנה INTO v FROM dual; dbms_output.put_line ( v ); -- הדפסת המשתנה EXCEPTION when OTHERS then /* טיפול בשגיאות */ dbms_output.put_line ( 'error: ' || sqlerrm ); END;או (מקור)
<<label>> -- this is optional DECLARE -- this section is optional number1 NUMBER(2); number2 number1%TYPE := 17; -- value default text1 VARCHAR2(12) := 'Hello world'; text2 DATE := SYSDATE; -- current date and time BEGIN -- this section is mandatory, must contain at least one executable statement SELECT street_number INTO number1 FROM address WHERE name = 'INU'; EXCEPTION -- this section is optional WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('Error Code is ' || TO_CHAR(sqlcode ) ); DBMS_OUTPUT.PUT_LINE('Error Message is ' || sqlerrm ); END;תנאים
IF :NEW.FieldName is null THEN NEW.FieldName :=Value: END IF;
SELECT name,
CASE Age
WHEN Age>100 THEN 'Old'
WHEN Age<3 THEN 'Baby'
ELSE 'Hi'
END
FROM customers;
GRANT / REVOKE
GRANT - הענקת הרשאות (privileges)REVOKE - הורדת הרשאותהרשאות לטבלה יכולות להיות כל שילוב של SELECT, INSERT,UPDATE, DELETE, REFERENCES, ALTER, INDEX, ALLלדוג'
GRANT SELECT, INSERT, UPDATE, DELETE ON TABLE_NAME TO user1;
היררכיות
במקרה של טבלה בה הנתונים מסודרים בצורה היררכית, נבצע שליפה לפי הסדר ההיררכי,
לפי הSyntax הבא -
START WITH כאן נכניס את המצב הראשוני, את שורש ההיררכיהCONNECT BY PRIOR וכאן את ההקשר בין שורת האב לשורת הילדים (כמו מזהה אב בשורת הבן למשל)<הסבר לא גמור-צריך דוגמא טובה>
ALTER TABLE celebs ADD COLUMN twitter_handle TEXT;אפשר גם להגדיר ערך ברירת מחדל לעמודה:
ALTER TABLE celebs ADD COLUMN twitter_handle TEXT DEFAULT 'zebra';
SELECT c.OrderID, c.ProductID, p.ProductName, p.Price FROM Price AS c JOIN Products AS p ON c.ProductID = p.ProductID;
SELECT CONCAT(CONCAT(last_name, '''s job category is '), job_id)התוצאה: Hall's job category is SA_REP
לדוגמא - CREATE TABLE celebs (name TEXT, age INTEGER);ניתן להגדיר עמודות כחייבות להיות מלאות או ייחודיות. לדוגמה:
להגדרת התאים כחייבים להיות UNIQUE CREATE TABLE celebs (name TEXT UNIQUE, age INTEGER NOT NULL);
DECODE - הפונקציה הזו משווה בין שני ערכים ומחזירה תשובה אם שווים, התשובה יכולה להיות כל פונקציה או שכמו בתשובה פשוט ניתן להוסיף אם אינם שווים ,לפי הסינטקס הבא
SELECT DECODE(P1, P2, 'Equal', 'Not Equal');
SELECT DISTINCT column_name FROM table;
DATEDIFF - מחזיר פער בין תאריכים, מספר של חודשים/ימים/שנים וכדו' לדוג
SELECT DATEDIFF(day, '2000/08/16', '2022/08/16') AS NumDayDiff;
SELECT DATEPART(yyyy, '2019/05/12') AS DatePart; יחזיר את השנה 2019
SELECT EXTRACT(YEAR FROM date_column) FROM table;
INSERT INTO celebs (name, age) VALUES ('Harrison Ford', 76);
SELECT column1, column2 FROM table;
UPDATE table_name SET column = new_value WHERE condition;
SELECT SUBSTR('ABCD', 2, 2) FROM dual; -- תוצאה: 'BC'
CREATE TABLE test (
id INTEGER PRIMARY KEY,
name TEXT,
grade INTEGER
);
SELECT Time, Name,RANK () OVER (partition by Name by Time desc)FROM
SELECT ABS(-5); -- לדוגמה: 5
SELECT * FROM products WHERE price > ALL (SELECT price FROM products WHERE category = 'Electronics');
SELECT * FROM products WHERE price > ANY (SELECT price FROM products WHERE category = 'Electronics');
SELECT * FROM products WHERE price BETWEEN 100 AND 500;
SELECT name, CASE WHEN price > 100 THEN 'Expensive' ELSE 'Cheap' END AS price_category FROM products;
SELECT CAST(price AS VARCHAR) FROM products;
SELECT COALESCE(NULL, NULL, 'Value'); -- לדוגמה: 'Value'
SELECT * FROM table1 CROSS JOIN table2;
SELECT * FROM products WHERE EXISTS (SELECT 1 FROM orders WHERE products.product_id = orders.product_id);
SELECT * FROM products WHERE price > 100 FOR UPDATE;
SELECT * FROM products;
SELECT category, COUNT(*) FROM products GROUP BY category HAVING COUNT(*) > 5;
SELECT product_id FROM products INTERSECT SELECT product_id FROM orders;
SELECT * FROM products WHERE price IS NULL;
SELECT * FROM products WHERE price IS NOT NULL;
SELECT * FROM orders JOIN customers ON orders.customer_id = customers.customer_id;
SELECT * FROM orders LEFT JOIN customers ON orders.customer_id = customers.customer_id;
SELECT * FROM orders RIGHT JOIN customers ON orders.customer_id = customers.customer_id;
SELECT * FROM products WHERE name LIKE 'A%';
SELECT * FROM products WHERE name NOT LIKE 'A%';
SELECT * FROM products ORDER BY price DESC;
SELECT * FROM table1 LEFT OUTER JOIN table2 ON table1.id = table2.id;
REVOKE SELECT ON products FROM user1;
ROLLBACK;
SELECT DISTINCT category FROM products;
SELECT product_id FROM products UNION SELECT product_id FROM orders;
UPDATE products SET price = price * 1.1 WHERE category = 'Electronics';
INSERT INTO products (name, price) VALUES ('Laptop', 1000);