sábado, 18 de enero de 2025

books

 https://github.com/manjunath5496/MySQL-Books/blob/master/README.md

lunes, 13 de enero de 2025

join

 CREATE TABLE members (

    member_id INT AUTO_INCREMENT,
    name VARCHAR(100),
    PRIMARY KEY (member_id)
);

CREATE TABLE committees (
    committee_id INT AUTO_INCREMENT,
    name VARCHAR(100),
    PRIMARY KEY (committee_id)
);Code language: SQL (Structured Query Language) (sql)

Second, insert some rows into the tables members and committees :

INSERT INTO members(name)
VALUES('John'),('Jane'),('Mary'),('David'),('Amelia');

INSERT INTO committees(name)
VALUES('John'),('Mary'),('Amelia'),('Joe');
mysql> SELECT * FROM members; +-----------+--------+ | member_id | name | +-----------+--------+ | 1 | John | | 2 | Jane | | 3 | Mary | | 4 | David | | 5 | Amelia | +-----------+--------+ 5 rows in set (0.00 sec) mysql> SELECT * FROM committees; +--------------+--------+ | committee_id | name | +--------------+--------+ | 1 | John | | 2 | Mary | | 3 | Amelia | | 4 | Joe | +--------------+--------+ 4 rows in set (0.00 sec) mysql> select m.member_id,c.committee_id,m.name,c.name from members m inner join committees as c on c.name=m.name; +-----------+--------------+--------+--------+ | member_id | committee_id | name | name | +-----------+--------------+--------+--------+ | 1 | 1 | John | John | | 3 | 2 | Mary | Mary | | 5 | 3 | Amelia | Amelia | +-----------+--------------+--------+--------+ 3 rows in set (0.01 sec) mysql> select m.member_id,c.committee_id,m.name,c.name from members m left join committees as c on c.name=m.name; +-----------+--------------+--------+--------+ | member_id | committee_id | name | name | +-----------+--------------+--------+--------+ | 1 | 1 | John | John | | 2 | NULL | Jane | NULL | | 3 | 2 | Mary | Mary | | 4 | NULL | David | NULL | | 5 | 3 | Amelia | Amelia | +-----------+--------------+--------+--------+ 5 rows in set (0.00 sec) mysql> select m.member_id,c.committee_id,m.name,c.name from members m right join committees as c on c.name=m.name; +-----------+--------------+--------+--------+ | member_id | committee_id | name | name | +-----------+--------------+--------+--------+ | 1 | 1 | John | John | | 3 | 2 | Mary | Mary | | 5 | 3 | Amelia | Amelia | | NULL | 4 | NULL | Joe | +-----------+--------------+--------+--------+ 4 rows in set (0.00 sec) mysql> SELECT * FROM members where name not in(SELECT name FROM committees); +-----------+-------+ | member_id | name | +-----------+-------+ | 2 | Jane | | 4 | David | +-----------+-------+ 2 rows in set (0.01 sec) mysql> select * from committees where name not in ( select name from members); +--------------+------+ | committee_id | name | +--------------+------+ | 4 | Joe | +--------------+------+ 1 row in set (0.00 sec)

Code language: SQL (Structured Query Language) (sql)

domingo, 5 de enero de 2025

CASE

 mysql> SELECT 

    ->     CASE 

    ->         WHEN 4 > 5 THEN 'Condition 1: 4 is greater than 5'

    ->         WHEN 4 = 4 THEN 'Condition 2: 4 is equal to 4'

    ->         WHEN 4 < 3 THEN 'Condition 3: 4 is less than 3'

    ->         ELSE 'Default case: None of the conditions were true'

    ->     END AS result;

+------------------------------+

| result                       |

+------------------------------+

| Condition 2: 4 is equal to 4 |

+------------------------------+

1 row in set (0.01 sec)


------------------


SELECT CASE YEAR(CURDATE())

    WHEN 2025 THEN 'Estamos en el 2025, un año de grandes oportunidades.'

    WHEN 2024 THEN 'Estamos en el 2024, ¡es hora de prepararnos para el futuro!'

    WHEN 2023 THEN 'Es el 2023, un año para reflexionar sobre lo que hemos logrado.'

    WHEN 2022 THEN 'Ya es 2022, un año para reconstruir y avanzar.'

    WHEN 2021 THEN 'Estamos en el 2021, la esperanza y la resiliencia continúan.'

    WHEN 2020 THEN 'El 2020 fue un año desafiante, pero aprendimos mucho.'

    ELSE 'Año desconocido, parece que estamos en el futuro.'

END AS tp;