设为首页 收藏本站
查看: 1317|回复: 0

[经验分享] informix 的sql语句

[复制链接]

尚未签到

发表于 2018-10-18 11:44:31 | 显示全部楼层 |阅读模式
  查询登陆帐户的用户名称
  SELECT * FROM cust_calls WHERE user_id = USER
  查询当前日期
  SELECT * FROM orders WHERE order_date = TODAY
  数据库主机的服务器名称
  SELECT FIRST 1 DBINFO(’dbhostname’) FROM systables
  SELECT name, NVL(address, "address is unknown") AS address ROM student
  LEFT JOIN, LEFT OUTER JOIN,RIGHT JOIN 和 RIGHT OUTER JOIN 与on 的连接
  SELECT c.customer_num, c.lname, c.company, c.phone,
  u.call_dtime, u.call_descr
  FROM customer c LEFT OUTER JOIN cust_calls u
  ON c.customer_num = u.customer_num;
  SELECT *
  FROM (t1 LEFT OUTER JOIN (t2 LEFT OUTER JOIN t3 ON t2.c1=t3.c1)
  ON t1.c1=t3.c1) JOIN (t4 LEFT OUTER JOIN t5 ON t4.c1=t5.c1)
  ON t1.c1=t4.c1;
  SELECT *
  FROM (t1 LEFT OUTER JOIN (t2 LEFT OUTER JOIN t3 ON t2.c1=t3.c1)
  ON t1.c1=t3.c1),
  (t4 LEFT OUTER JOIN t5 ON t4.c1=t5.c1)
  WHERE t1.c1 = t4.c1;
  SELECT *
  FROM (t1 LEFT OUTER JOIN (t2 LEFT OUTER JOIN t3 ON t2.c1=t3.c1)
  ON t1.c1=t3.c1) LEFT OUTER JOIN (t4 JOIN t5 ON t4.c1=t5.c1)
  ON t1.c1=t4.c1;
  SELECT *
  FROM t1 LEFT OUTER JOIN (t2 LEFT OUTER JOIN t3 ON t2.c1=t3.c1)
  ON t1.c1=t2.c1;
  SELECT *
  FROM t1 LEFT OUTER JOIN (t2 LEFT OUTER JOIN t3 ON t2.c1=t3.c1)
  ON t1.c1=t3.c1;
  SELECT *
  FROM (t1 LEFT OUTER JOIN t2 ON t1.c1=t2.c1)
  LEFT OUTER JOIN t3 ON t2.c1=t3.c1;
  SELECT *
  FROM (t1 LEFT OUTER JOIN t2 ON t1.c1=t2.c1)
  LEFT OUTER JOIN t3 ON t1.c1=t3.c1;
  SELECT *
  FROM t9, (t1 LEFT JOIN t2 ON t1.c1=t2.c1) ,
  (t3 LEFT JOIN t4 ON t3.c1=10), t10, t11 ,
  (t12 LEFT JOIN t14 ON t12.c1=100);
  //满足所有的相等 且 右边有值条件的结果
  SELECT c.customer_num, c.fname, c.lname, o.order_num,
  o.order_date, o.customer_num
  FROM customer c RIGHT OUTER JOIN orders o
  ON (c.customer_num = o.customer_num);
  WHERE 字查询 的条件语句
  ALL
  ANY
  IN
  EXISTS
  SELECT order_num, stock_num, manu_code, total_price
  FROM items
  WHERE total_price < ALL
  (SELECT total_price FROM items
  WHERE order_num = 1023)
  SELECT DISTINCT order_num
  FROM items
  WHERE total_price > ANY
  (SELECT total_price
  FROM items
  WHERE order_num = 1005)
  SELECT order_num FROM items
  WHERE stock_num = 9
  AND quantity =
  (SELECT MAX (quantity)
  FROM items
  WHERE stock_num = 9)
  SELECT UNIQUE manu_name, lead_time
  FROM manufact
  WHERE EXISTS
  (SELECT * FROM stock
  WHERE description MATCHES ’*shoe*’
  AND manufact.manu_code = stock.manu_code)
  SELECT UNIQUE manu_name, lead_time
  FROM stock, manufact
  WHERE manufact.manu_code IN
  (SELECT manu_code FROM stock
  WHERE description MATCHES ’*shoe*’)
  AND stock.manu_code = manufact.manu_code
  SELECT customer_num, company FROM customer
  WHERE customer_num NOT IN
  (SELECT customer_num FROM orders
  WHERE customer.customer_num = orders.customer_num)
  SELECT customer_num, company FROM customer
  WHERE NOT EXISTS
  (SELECT * FROM orders
  WHERE customer.customer_num = orders.customer_num)
  CREATE TABLE accounts (
  acc_num SERIAL primary key,
  acc_type INT,
  acc_descr CHAR(20));
  CREATE TABLE sub_accounts (
  sub_acc INTEGER primary key,
  ref_num INTEGER REFERENCES accounts (acc_num)
  ON DELETE CASCADE,
  sub_descr CHAR(20));
  删除将回导致级联删除
  DELETE FROM accounts WHERE acc_num = 2
  CREATE INDEX ix_cust ON orders (customer_num);
  ALTER INDEX ix_cust TO CLUSTER;//以物理方式排序
  ALTER TABLE items
  ADD (item_weight DECIMAL(6,2) NOT NULL BEFORE total_price)
  //添加字段
  ALTER TABLE cust_calls
  ADD ref_order INTEGER REFERENCES orders (order_num) BEFORE user_id
  //添加外键
  ALTER TABLE catalog DROP CONSTRAINT aa 删除外键约束
  ALTER TABLE catalog ADD CONSTRAINT //添加新的外键约束
  (FOREIGN KEY (stock_num, manu_code) REFERENCES stock
  ON DELETE CASCADE CONSTRAINT ab)
  ALTER TABLE items
  ADD (unit_price MONEY (6,2) CHECK (unit_price > 0) )
  CREATE TABLE tab1 (i1 int, i2 int, i3 int);
  CREATE TABLE tab2 (i4 int, i5 int);
  CREATE TRIGGER col1trig UPDATE OF i2 ON tab1
  BEFORE(INSERT INTO tab2 VALUES(1,1));
  ALTER TABLE tab2 DROP i4; 删除键
  ALTER TABLE items MODIFY (quantity SMALLINT DEFAULT 1 NOT NULL) 修改
  ALTER TABLE stock MODIFY (description LVARCHAR(3072))
  CREATE DATABASE vehicles(数据库) IN research(数据库空间)
  CREATE DATABASE vehicles WITH BUFFERED LOG 缓存日志
  CREATE DATABASE employees WITH LOG MODE ANSI 模式
  如何查看一个表的段数目。
  在informix的sysmasters库中,通过执行
  select count(*) from sysextends where tabname="表名"
  表sysextend记录了各个表每个段的大小和地址信息。
  dbaccess - -99 and tabtype='T' (OK)
  例子2:返回任何表中插入的最后一个SERIAL值
  select dbinfo('sqlca.sqlerrd1') from systables where tabid = 1
  例子3:返回最后一个SELECT,INSERT,UPDATE,DELETE或EXECUTE PROCEDURE语句处理的行数;
  select dbinfo('sqlca.sqlerrd2') from systables where tabid=1;


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-623161-1-1.html 上篇帖子: DB2 SQL存储过程语法官方权威指南(翻译) 下篇帖子: SQL 读取Excel
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表